[VC++]リソースファイルの解放


VC++プログラムでは、アイコンや画像、その他のリソースファイルなど、さまざまなリソースファイルが含まれる場合がありますが、これらのリソースファイルをどのようにエクスポートしますか?便宜上、関数を書きました.
/*
    :      

    :DWORD dwResName           ID , IDR_EXE
	  LPCSTR lpResType             , "EXE"
	  LPCSTR lpFilePathName            , "D:\\Test.exe"

   :     TRUE,    FALSE
*/
BOOL FreeResFile(DWORD dwResName, LPCSTR lpResType, LPCSTR lpFilePathName )
{	
	HMODULE hInstance = ::GetModuleHandle(NULL);//        
	
	HRSRC hResID = ::FindResource(hInstance,MAKEINTRESOURCE(dwResName),lpResType);//    
	HGLOBAL hRes = ::LoadResource(hInstance,hResID);//    
	LPVOID pRes = ::LockResource(hRes);//    
	
	if (pRes == NULL)//    
	{
		return FALSE;
	}
	DWORD dwResSize = ::SizeofResource(hInstance,hResID);//           
	HANDLE hResFile = CreateFile(lpFilePathName,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);//    
	
	if (INVALID_HANDLE_VALUE == hResFile)
	{
		//TRACE("      !");
		return FALSE;
	}

	DWORD dwWritten = 0;//       	
	WriteFile(hResFile,pRes,dwResSize,&dwWritten,NULL);//    
	CloseHandle(hResFile);//      
	
	return (dwResSize == dwWritten);//           ,    ,    
}

本帖はオリジナルで、転帖は出典を説明してください.ご協力ありがとうございます.
本住所:http://blog.csdn.net/sonsie007/article/details/8837205