| 发表于:2007-01-10 10:23:21 楼主 |
需求是这样的,我现在拿到一个dll,但是他并不符合程序的需求,我需要把他封装成另外一个dll,但是总是编译不过。(我不是做vc的,但是没有人搞这个东西,被逼来搞vc了,所以问题可能很新手,望多多指教,谢谢) 环境:vc6 目前我有dll,lib和def以及它导出的h文件。 我的步骤,file-> new-> projects-> win32 dynamic-link library 写了如下的文件: printer.h(这个是导入那个动态链接库的头文件) #define dllimport __declspec(dllimport) dllimport bool __stdcall zqopenprinter(lpstr); t.h(这个是我再次封装,想导出的头文件) #define dllexport __declspec(dllexport) dllexport bool openprinter(lpstr); 在我的主函数里调用如下: #include "stdafx.h " #include "printer.h " #include "t.h " dllexport bool openprinter(lpstr printname){ return zqopenprinter(printname); } 在project-> setting-> link-> object/library modules add the lib file. 编译报错: linking... creating library debug/t.lib and object debug/t.exp t.obj : error lnk2001: unresolved external symbol "__declspec(dllimport) bool __stdcall zqopenprinter(char *) " (__imp_?zqopenprinter@@yg_npad@z) debug/t.dll : fatal error lnk1120: 1 unresolved externals error EXECuting link.exe. t.dll - 2 error(s), 0 warning(s) |
|
|
|
|