我使用此代码加载嵌入资源(位图图像)
HRSRC hResInfo = ::FindResource(hInstance, MAKEINTRESOURCE(resourceId), RT_BITMAP);
HGLOBAL hRes = ::LoadResource(hInstance, hResInfo);
LPVOID memRes = ::LockResource(hRes);
DWORD sizeRes = ::SizeofResource(hInstance, hResInfo);
效果很好。
我怎样才能将其保存到文件中C:\图像.bmp?
此代码仅创建空文件:
HANDLE hFile = ::CreateFile(L"C:\\image.bmp", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
DWORD dwWritten = 0;
::WriteFile(hFile, memRes, sizeRes, &dwWritten, NULL);
::CloseHandle(hFile);
解决方案:
在资源中创建新类型“BMP”并放置图像
HRSRC hResInfo = FindResource(hInstance, MAKEINTRESOURCE(resourceId),_T("BMP"));
CreateFile()
, WriteFile()
, and CloseHandle()
.
WriteFile()
需要一个指针和一个大小,以便可以直接从锁定的资源写入。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)