社区
进程/线程/DLL
帖子详情
GetProcAddress
yang2884
2008-05-10 10:30:37
LoadLibrary返回值不为空,但GetProcAddress()总返回空值,什么原因?
...全文
861
17
打赏
收藏
GetProcAddress
LoadLibrary返回值不为空,但GetProcAddress()总返回空值,什么原因?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vocanicy
2008-05-12
打赏
举报
回复
你到网上找找,有个工具叫Dll2Lib可以从dll文件生成lib文件
kugou123
2008-05-12
打赏
举报
回复
看函数是否存在,函数名是否正确。
还要看你声明的函数指针类型是否和目标函数匹配。
lake_cx
2008-05-12
打赏
举报
回复
是啊,确实没问题,但是人家dll升级了名字可能会变,你得再重新找一次,然后改下名字再编译
dbger
2008-05-12
打赏
举报
回复
[Quote=引用 13 楼 yang2884 的回复:]
用Depends查看DLL是否函数真的存在??
我用Depends看了,是?函数名@@YA?AVCOut@@XZ
是C++风格的导出DLL,不能直接用LoadLibrary和GetProcAddress调用
简单的方法是用导出的Lib库
[/Quote]
我没有Lib库.
我用GetProcAddress(hDll, "?函数名@@YA?AVCOut@@XZ ")是可以的调用该函数,但有没有问题呀?
[/Quote]
没问题,就是看着不太爽.
yang2884
2008-05-12
打赏
举报
回复
用Depends查看DLL是否函数真的存在??
我用Depends看了,是?函数名@@YA?AVCOut@@XZ
是C++风格的导出DLL,不能直接用LoadLibrary和GetProcAddress调用
简单的方法是用导出的Lib库
[/Quote]
我没有Lib库.
我用GetProcAddress(hDll, "?函数名@@YA?AVCOut@@XZ ")是可以的调用该函数,但有没有问题呀?
dbger
2008-05-11
打赏
举报
回复
[Quote=引用 11 楼 yang2884 的回复:]
引用 3 楼 dbger 的回复:
引用 2 楼 yang2884 的回复:
GetLastError错误码提示:"找不到指定的程序", 但被调用的函数名在DLL里是有的呀? 不过,该DLL不是我写的,它的头文件里有声明.
用Depends查看DLL是否函数真的存在??
我用Depends看了,是?函数名@@YA?AVCOut@@XZ
[/Quote]
是C++风格的导出DLL,不能直接用LoadLibrary和GetProcAddress调用
简单的方法是用导出的Lib库
yang2884
2008-05-11
打赏
举报
回复
[Quote=引用 3 楼 dbger 的回复:]
引用 2 楼 yang2884 的回复:
GetLastError错误码提示:"找不到指定的程序", 但被调用的函数名在DLL里是有的呀? 不过,该DLL不是我写的,它的头文件里有声明.
用Depends查看DLL是否函数真的存在??
[/Quote]
我用Depends看了,是?函数名@@YA?AVCOut@@XZ
dbger
2008-05-10
打赏
举报
回复
[Quote=引用 9 楼 yang2884 的回复:]
怎么使用DEPENDS?在哪个菜单下?
[/Quote]
在Windows程序菜单VC菜单的TOOLS里面找找。
yang2884
2008-05-10
打赏
举报
回复
怎么使用DEPENDS?在哪个菜单下?
yang2884
2008-05-10
打赏
举报
回复
我是VC6
dbger
2008-05-10
打赏
举报
回复
[Quote=引用 5 楼 yang2884 的回复:]
请教如何用用"Depends查看"?不胜感激!!
[/Quote]
Depends是个工具,查看程序的DLL依赖等。
如果是VC6,里面带了。
也可以去下载:
www.dependencywalker.com
dbger
2008-05-10
打赏
举报
回复
[Quote=引用 4 楼 yang2884 的回复:]
顺便说一句,我只有DLL和H文件,没有LIB文件.如何调用该DLL里的函数呢?
[/Quote]
就用你现在的方法LoadLibrary和GetProcAddress
yang2884
2008-05-10
打赏
举报
回复
请教如何用用"Depends查看"?不胜感激!!
yang2884
2008-05-10
打赏
举报
回复
顺便说一句,我只有DLL和H文件,没有LIB文件.如何调用该DLL里的函数呢?
dbger
2008-05-10
打赏
举报
回复
[Quote=引用 2 楼 yang2884 的回复:]
GetLastError错误码提示:"找不到指定的程序", 但被调用的函数名在DLL里是有的呀? 不过,该DLL不是我写的,它的头文件里有声明.
[/Quote]
用Depends查看DLL是否函数真的存在??
yang2884
2008-05-10
打赏
举报
回复
GetLastError错误码提示:"找不到指定的程序", 但被调用的函数名在DLL里是有的呀? 不过,该DLL不是我写的,它的头文件里有声明.
dbger
2008-05-10
打赏
举报
回复
可能是Get的函数不存在,GetLastError看看错误码。
vb6的dll线程注入示例,CreateRemoteThread ,Get
Proc
Address
VB的dll注入示例,2020202020202020
还原x64跨进程"GetModuleHandle+Get
Proc
Address
"实现过程(纯内存)
还原x64跨进程"GetModuleHandle+Get
Proc
Address
"实现过程(纯内存)
window_Cwnd.rar_Get
Proc
Address
_cad_getwindowlong_user32.dll_创建窗口
实现窗口透明 只需在创建窗口函数中加入 SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE, GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000) HINSTANCE hInst = LoadLibrary("User32.DLL") if(hInst) { typedef BOOL (WINAPI *MYFUNC)(HWND,COLORREF,BYTE,DWORD) MYFUNC fun = NULL //取得SetLayeredWindowAttributes函数指针 fun=(MYFUNC)Get
Proc
Address
(hInst, "SetLayeredWindowAttributes") if(fun)fun(this->GetSafeHwnd(),0,200,2) FreeLibrary(hInst) }
huishouzhan.rar_Get
Proc
Address
_HUISHOUZHA
程序运行初期,程序首先会通过LoadLibrary函数加载动态链接库Shell32.dll,并且把加载后的操作句柄存储在LibHandle中。然后通过@SHEmptyRecycleBin:=Get
Proc
Address
(LibHandle, SHEmptyRecycleBinA )语句读取SHEmptyRecycleBinA函数的地址,如果以上语句能够正确执行(也就是@SHEmptyRecycleBin不等于nil),那么就调用SHEmptyRecycleBin完成清空回收站的操作。最后释放动态链接库。
易语言动态调用DLL模块
易语言动态调用DLL模块源码,动态调用DLL模块,动态调用,CallWindow
Proc
,LoadLibrary,FreeLibrary,Get
Proc
Address
进程/线程/DLL
15,466
社区成员
49,169
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章