gpt4 book ai didi

c++ - 从 Windows 模块中的资源中提取文件

转载 作者:行者123 更新时间:2023-11-27 23:23:09 27 4
gpt4 key购买 nike

下面的代码执行了,但是它只提取了一个空的位图文件。关于它有什么问题的任何想法?

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,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
DWORD dwByteWritten;
WriteFile(hFile, lpLock , dwSize , &dwByteWritten , NULL);
CloseHandle(hFile);
FreeResource(hLoaded);
}

最佳答案

您正在请求 RT_RCDATA,但我敢打赌您没有通过 RCDATA 语句添加位图。您可能通过 BITMAP 语句添加了它,这使其成为 RT_BITMAP

以后请说明是哪一步失败了,不要让人猜。

关于c++ - 从 Windows 模块中的资源中提取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11388134/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com