从Windows模块中的资源中提取文件【JAVA教程】

!
也想出现在这里? 联系我们
信息

从Windows模块中的资源中提取文件,第1张

概述从Windows模块中的资源中提取文件

下面的代码执行,但它只提取一个空的位图文件。 任何想法,以什么是错的呢?

voID Extract(WORD wResID,LPSTR lpszOutputPath) { //example: Extract(IDB_BITMAP1,\”Redrose.bmp\”); HRSRC hrsrc = FindResource(NulL,MAKEINTRESOURCE(wResID),RT_BITMAP); HGLOBAL hLoaded = LoadResource( NulL,hrsrc); LPVOID lpLock = LockResource( hLoaded); DWORD DWSize = SizeofResource(NulL,hrsrc); HANDLE hfile = Createfile (lpszOutputPath,GENERIC_WRITE,NulL,CREATE_ALWAYS,file_ATTRIBUTE_norMAL,NulL); DWORD DWByteWritten; Writefile(hfile,lpLock,DWSize,&DWByteWritten,NulL); CloseHandle(hfile); FreeResource(hLoaded); }

提取拉撒路资源

如何使用正则Expression式提取URL的引号

仅解压缩名称中包含与数字列表匹配的数字的某些文件

使用binwalk提取所有文件

在windows平台上提取和检测powerPC的elf文件

您正在询问RT_RcdaTA但我敢打赌,您没有通过RcdaTA语句添加您的位图。 你可能通过一个BITMAP语句来添加它,这使得它成为RT_BITMAP 。

未来,请说明哪一步失败,而不是让人猜测。

将您的原始文件作为自定义数据插入。 给这个自定义数据一个文本名称,例如“MyType”,然后:

HRSRC hrsrc = FindResource(NulL,_T(\”MyType\”));

问题是将NulL作为您的HINSTANCE参数传递给FindResource , LoadResource和SizeOfResource 。

如果您尚未在启动过程中保存HINSTANCE(从WinMain或DllMain),您可以使用:

MFC:

HINSTANCE hInstance = AfxGetInstanceHandle();

其他:

HINSTANCE hInstance = (HINSTANCE)GetmoduleeHandle(NulL);

总结

以上是内存溢出为你收集整理的从Windows模块中的资源中提取文件全部内容,希望文章能够帮你解决从Windows模块中的资源中提取文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

© 版权声明
THE END
喜欢就支持一下吧
点赞50 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容