الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

GetModuleHandle and DLL

مغلق
بدأه Yousof في 6 أبريل 2006 · 2 رد · 537 مشاهدة · في لغة C و ++C
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

عندي مشكله في هذا الكود

المفروض ان الادرس للدي ال ال ما يساوي الصفر اذا كان فايل الدي ال ال موجود لكنه يعطيني قيمة صفر في كل مره. لا اعرف السبب!

الرجاء المساعده وشكرا

#include <windows.h>
#include <iostream.h>
#include <Lmcons.h>

void main()
{
	HMODULE hModule;
	char dllpath[MAX_PATH];
	char modname[] = "mydll.dll";
	// even if I put the full path e.g. "c:\\my\\full\\path\\mydll.dll" it doesnt work!

	// From DLL name module handle acquisition 

	hModule = GetModuleHandle(modname);

	cout<<"The address of DLL file is: \n"<<hModule<<endl;

	if(hModule != NULL)
	{

  // From module handle full pass of DLL acquisition 
  GetModuleFileName (hModule, dllpath, sizeof (dllpath));

  // Verification message 
  MessageBox(NULL, dllpath," DLL Path", MB_OK);
	}

}
#2

ياه نفس المشكلة كانت حصلت معايا قبل كده :D

الحل إنك قبل ما تستخدم GetModuleHandle لازم تكون الdll دي موجودة في الaddress space بتاع الprocess

من غير كلام كتير إعملها LoadLibrary الأول قبل ما تستخدم GetModuleHandle

#3
usama707 كتب:
ياه نفس المشكلة كانت حصلت معايا قبل كده :D

الحل إنك قبل ما تستخدم GetModuleHandle لازم تكون الdll دي موجودة في الaddress space بتاع الprocess

من غير كلام كتير إعملها LoadLibrary الأول قبل ما تستخدم GetModuleHandle

شكرا يا اسامه

انحلت المشكله :D

هذا الموضوع مغلق.

مواضيع مشابهة