hZip = LoadLibrary("ZIP32J.DLL");
告诉我调用失败
我已经把ZIP32J.DLL放到system32文件夹了是不是就可以直接调用,还是需要注册一下在调用。还是LoadLibrary后面要写绝对路径?请各位指导一下
告诉我调用失败
我已经把ZIP32J.DLL放到system32文件夹了是不是就可以直接调用,还是需要注册一下在调用。还是LoadLibrary后面要写绝对路径?请各位指导一下
if(hZip == NULL)
{
DWORD dwError = GetLastError(); //看看具体的错误是什么
}
HINSTANCE hZip = NULL;
PZip Zip = NULL;
int Result;
char buffer[819200],szCmdLine[1024]; hZip = LoadLibrary("ZIP32J.DLL"); if (hZip != NULL) {
Zip = (PZip)GetProcAddress(hZip, "Zip");
if (Zip != NULL) {
strcpy(szCmdLine, "-j \"c:\\testto\\test.zip\" ");
strcat(szCmdLine, "\"C:\\ZIPfrom\\*.*\"");
Result = (*Zip)(NULL, szCmdLine, buffer, 819200);
}
FreeLibrary(hZip);
}
}
然后出来个error警示框
说can't load zip32.dll
他说不能调用zip32.dll我在有的机器上好用,有的就出error
同样的代码,zip32j.dll也考到system32下了
GetProcAddress之前要定义一个DLL导出库的函数指针,
typedef (zip函数的返回值类型)(*FUNZIP)(zip函数的参数类型列表)
FUNZIP fZip = (PZip)GetProcAddress(hZip, "Zip");
不带COM接口的load之后就可以用了。
带COM接口的要注册的。