dll调用疑问 我看了一个vc6.0编写的例子,使用动态库xxx.lib 。该工程目录下有xxx.lib和xxx.h,然而在程序中即没有显式调用也没有隐式调用的代码,项目的link中也没有包含该lib,编译却通过了!运行正常。为什么?难道是该dll特殊?有经验的请赐教 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 源代码中是否使用了#pragma comment(lib, "xxx") 2楼,没有。你说的就是隐式调用了。没有#pragma comment(lib, "xxx")也没有loadlibrary("xxx.dll") lib文件保存了该dll的导出函数名。调用动态库有两种方法1.隐式调用 包含.lib和.h文件就可以2.显式调用 用LoadLibrary得到dll句柄,然后用GetProcAddress得到需要的函数 该动态库被安装到windows\system32下,使某外设的驱动。 刚才没有看清楚看你的工程里有没有#pragma comment(lib, "xxx")或者在File View->External Dependencies里看看 在Workspace->FileView->External Dependencies里找.lib文件 10楼,external Dependencies里没有 看看DLL提供的头文件里是否有 __declspec(import) 之类的 如下:#ifndef WINSDATA#define WINSDATA __declspec(dllimport)#endif有什么用吗? 这个定义在DLL项目中表示导出符号,在使用此DLL的项目中表示导入符号。DLL提供的头文件应该也会包含#pragma comment(lib, "xxx.lib")这样的语句,省去了你的麻烦 在你的VC的Project Settings->link->Gerneral->Object/LibraryModules 找找看! 问题是头文件里没有#pragma comment,我在上面已经说过了。我现在在工程的一些文件中发现了包含xxx.lib的行,但不知道是怎么加进去的。像Pxxx.dsp Pxxx.opt Pxxx.plg Pxxx.vcproj 怎样将 dll 通过资源的方式放入 exe ,当exe运行时候释放?????? MDI如何限制主框架拖动大小 fputs不能写入文件 win7下的VS2008输入时反向 加载多个Flash动画的问题,加载到内存中的Flash动画如何清除? 客户端如何知道服务器端已经断开或关闭了监听?TCP通讯! 那儿有VC下的? 哪位朋友晓得如何在edit box 里面获取数值信息,而且当数值信息超过一定值的时候自动出现错误提示 有知道用VC++访问exchange数据的高手吗? 求教WMI开发 怎样改变控件的大小 VC中Static变量,单步调试的时候,查看不到,应该怎么解决呢
没有#pragma comment(lib, "xxx")
也没有loadlibrary("xxx.dll")
调用动态库有两种方法
1.隐式调用
包含.lib和.h文件就可以
2.显式调用
用LoadLibrary得到dll句柄,然后用GetProcAddress得到需要的函数
#pragma comment(lib, "xxx")
或者在File View->External Dependencies里看看
#ifndef WINSDATA
#define WINSDATA __declspec(dllimport)
#endif有什么用吗?
我现在在工程的一些文件中发现了包含xxx.lib的行,但不知道是怎么加进去的。
像Pxxx.dsp Pxxx.opt Pxxx.plg Pxxx.vcproj