社区
GAME,图形处理/多媒体
帖子详情
恭迎各路大神,LoadResource 取得DLL句柄后怎么保存
雾里瓢把子
2016-04-02 09:47:18
如题, 一个DLL文件中有PNG图片, 我用LoadResource 返回图片的句柄之后 该怎么保存图片呢? 或者直接在图片框中显示处理
小子先谢过了
...全文
1911
回复
打赏
收藏
恭迎各路大神,LoadResource 取得DLL句柄后怎么保存
如题, 一个DLL文件中有PNG图片, 我用LoadResource 返回图片的句柄之后 该怎么保存图片呢? 或者直接在图片框中显示处理 小子先谢过了
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
DLL
中如何获取自身的
句柄
如题: 一个EXE加载了一个
DLL
。我想在
DLL
中动态的获取
DLL
本身的实例
句柄
.有没有什么方法? 我不想使用
Dll
Main中
保存
全局
句柄
的方法。 说明: (1) MFC扩展
DLL
中 int
Dll
Main(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved) 第一个参数即为
DLL
句柄
(2)WIN32
DLL
中 BOO
Find
Resource
在
DLL
中的正确用法
Find
Resource
在
DLL
中的正确用法 场景 我在写MFC应用程序的时候,假设程序名字叫做MyApp。我在MyApp的
resource
.h文件中定义了一个资源的ID,如下所示 #define IDR_FILES_MYZIPFILE 3000 然后在相应的MyApp.rc文件中定义了这个资源ID所指向的资源的位置,如下: IDR_FILES_MYZIPFILE FILES "res\\MyZip.zip" 然后我在编写我的程序的时候,我通过以下方式想要加载
DLL
中的资
获取
DLL
的模块的
句柄
的简单方法
获取
DLL
的模块的
句柄
,在不确定
DLL
名称或者不能直接使用
Dll
Main的参数时,可以使用以下伪代码来获取
Dll
的模块
句柄
:extern "C" IMAGE_DOS_HEADER __ImageBase;HMODULE h
Dll
= reinterpret_cast(&__ImageBase);
在
DLL
中获取主进程窗口
句柄
有的时候难免需要在
DLL
中获取主进程的窗口
句柄
,比如在
DLL
注入的时候等等。那么如何在
DLL
中获取主进程的窗口
句柄
呢?可以通过EnumWindows来实现。先通过GetCurrentProcessId获取进程的PID,然后在EnumWindows中调用GetWindowThreadProcessId获得与窗口
句柄
关联的进程PID,然后对比PID,看是否相等,并判断是不是主窗口即可。 以上方法参考
MFC规则
dll
中获取当前模块
句柄
对于普通规则的
Dll
,有需要的情况下通常会在
Dll
Main中
保存
第一个参数hInstance的值,而MFC规则
dll
没有
Dll
Main(准确来说是由MFC框架封装了),那该怎么拿到呢? 有人说GetModuleHandle(lp
Dll
Name)酱紫方法可以拿到。但是考虑一个问题,如果
dll
名字呗改了(极少数情况。。。),应该有种更好的方法。我们看MFC中给出的
Dll
Main: C:\Progr
GAME,图形处理/多媒体
1,185
社区成员
14,330
社区内容
发帖
与我相关
我的任务
GAME,图形处理/多媒体
Delphi GAME,图形处理/多媒体
复制链接
扫一扫
分享
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章