社区
进程/线程/DLL
帖子详情
关于DLL中函数调用的问题
Dylan326-QAZ
2010-10-24 03:39:09
GetProcAddress(hInst,"add"),获取函数失败,
而改成GetProcAddress(hInst,MAKEINTRESOURCE(1))成功
经常为引用函数名的时候返回为空
改成序号就成功,
这问题在哪里
...全文
60
6
打赏
收藏
关于DLL中函数调用的问题
GetProcAddress(hInst,"add"),获取函数失败, 而改成GetProcAddress(hInst,MAKEINTRESOURCE(1))成功 经常为引用函数名的时候返回为空 改成序号就成功, 这问题在哪里
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jenf
2010-10-24
打赏
举报
回复
嗯 应该是C++编译器函数名弄的,使用extern "C"试试
lonelyrains
2010-10-24
打赏
举报
回复
dll工程,为了维护函数的重载,函数发生名字改编,需要在dll工程中的函数名前加_stdcall,调用工程的编译器要设置为__stdcall方式,也就是Pascal方式调用,定义的函数指针要用WINAPI修饰,也就是_stdcall
freecodeMAN
2010-10-24
打赏
举报
回复
1.
开始-> 所有程序 ->visual studio组 -> VisualStudio Tools-> VisualStudio命令提示
进去一个dos界面, 然后在这里进入到dll的目录,
输入dumpbin -exports xxx.dll 查看输出信息中 xxx.dll下相应 函数被编译后的名称。
才是GetProcAddress(hInst,"aaa")aaa用的名称。
可能是 add, 也可能类似 @add&ud9#之类的。
2.
在输出dll时, 函数头 加上extern "C" 可以使编译名 固定为 add.
3.
在工程.dll文件同目录下 编写同名 xxx.def函数,来控制 输出的函数名,具体方法到网上查吧.
libinfei8848
2010-10-24
打赏
举报
回复
名字不要手动填入,用程序读出
mayudong1
2010-10-24
打赏
举报
回复
导出的时候加上extern "C"才能使导出函数名跟定义的一样
或者使用def文件导出
FoxBryant
2010-10-24
打赏
举报
回复
使用DLL导出函数查看工具检查一下导出的名字是否正确。
c语言调用
dll
回调函数,
DLL
函数调用
以及回调函数设置
在window开发
中
,紧张要将一些库编译成
DLL
以共享给其他程序使用,那么怎样调用
DLL
函数1.只是普通调用
DLL
中
的函数1.1在VS2012
中
创建一个
DLL
程序,如My
DLL
。新建一个My
DLL
.h头文件,加入如下代码:extern "C" _declspec...
如何调用
DLL
中
的函数
...
DLL
工程
中
的 cpp
中
函数定义如下: extern "C" _declspec (
dll
export ) int add(int a, char b) { return a + b; } 一:显示链接 调用的
DLL
的主工
代码实现加载
dll
,动态调用调用
dll
接口函数
1、
dll
封装时需要实现从基类继承的虚函数,并导出两个函数供外部调用:a、CreateLidarPlugin函数用于new子类对象供外部使用;b、DestroyLidarPlugin函数用于释放CreateLidarPlugin函数new的对象 2、
dll
都必须...
C\C++ 加载
dll
并调用
dll
中
的函数
加载
dll
并调用
dll
中
的函数。
C++ 调用
DLL
函数
隐式加载将会把
DLL
中
所有标识为_declspec(
dll
export)的函数都加载,若遇到多个
DLL
,则一次性加载所有
DLL
会影响到效率,因此一般情况下使用动态加载。注意动态加载过后,需要释放加载的
DLL
。 下面介绍动态加载
DLL
的...
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章