有个问题,大家帮我看下,为什么dll调用后,得不到里面的函数啊,是什么问题,错误号是127
HINSTANCE hdll;
PDllENTRY dllentry; CString path = "D:\\DPC\\exe2dll\\ExtractData\\Debug\\";
CString filename = "ExtractData.dll"; hdll = LoadLibrary(path + filename);
ASSERT( hdll > (HINSTANCE)HINSTANCE_ERROR );
dllentry = (PDllENTRY)GetProcAddress(hdll,"LaunchExtractData");
DWORD err = GetLastError();
dllentry(1);
FreeLibrary(hdll);
HINSTANCE hdll;
PDllENTRY dllentry; CString path = "D:\\DPC\\exe2dll\\ExtractData\\Debug\\";
CString filename = "ExtractData.dll"; hdll = LoadLibrary(path + filename);
ASSERT( hdll > (HINSTANCE)HINSTANCE_ERROR );
dllentry = (PDllENTRY)GetProcAddress(hdll,"LaunchExtractData");
DWORD err = GetLastError();
dllentry(1);
FreeLibrary(hdll);
CString filename = "ExtractData.dll";
char ss[256];
strcpy(ss, path);
strcat(ss, filename);
filename = ss;
hdll = LoadLibrary(filename);
GetProcAddress后,dllentry的值是NULL吗?如果是,那么是函数名写错,或该函数没有在dll里导出如果以上都不是,那是在哪一步有问题?
1.DEF
2. __declspec(dllexport)如果你是用第二种方法导出,请用vc6.0带的dependency查看最终导出的函数名,比如_LaunchExtractData@12等.
PDllENTRY dllentry;dllentry = (PDllENTRY)GetProcAddress(hdll,"LaunchExtractData");
DWORD err = GetLastError();
dllentry(1);
FreeLibrary(hdll);