如何保存工程里的资源文件
如题,我在工程的资源列表里面加入了一个ICO文件,ID为IDI_ICON1。
当程序执行时,我需要将这个文件释放到本地磁盘,比如释放到C:\my.ico。
网上查找了下,基本上都是用FindSource做的。代码如下:
HINSTANCE handle = ::AfxGetResourceHandle();
HRSRC hrsrc= FindResource(handle,MAKEINTRESOURCE(IDI_ICON1),_T("ICO"));
DWORD nNumber,nSize = ::SizeofResource(handle,hrsrc);
HGLOBAL hData = LoadResource(handle,hrsrc);
LPVOID pv = LockResource(hData);
HANDLE hFile = CreateFile(LPCWSTR("C:\\my.ICO"), GENERIC_WRITE,
0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);
WriteFile(hFile, pv,nSize, &nNumber, NULL);
CloseHandle(hFile);
FreeResource(hData);
可是执行结果不对,调试发现 hrsrc总是为空。
请高手指点,环境xp + vs2005