| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
各位师傅们,以下这段资源释放代码,在X86编译运行正常,X64就弹C2664错误,网页都翻烂了,也没解惑.... 
还请前辈们帮助,先谢谢了   
 
 
错误        C2664        “HRSRC FindResourceW(HMODULE,LPCWSTR,LPCWSTR)”: 无法将参数 3 从“CHAR *”转换为“LPCWSTR” 
 
错误        C2664        “HANDLE CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE)”: 无法将参数 1 从“CHAR *”转换为“LPCWSTR”         
 
错误        C2664        “DWORD GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD)”: 无法将参数 2 从“char [260]”转换为“LPWSTR”         
         
         
 
 
- BOOL ReleaseLibrary(UINT uResourceId, CHAR* szResourceType, CHAR* szFileName)
 
 - {
 
 -         // 找到资源
 
 -         HRSRC hRsrc = FindResource(NULL, MAKEINTRESOURCE(uResourceId), szResourceType);
 
 -         // 获取资源大小
 
 -         DWORD dwSize = SizeofResource(NULL, hRsrc);
 
  
-         // 载入资源
 
 -         HGLOBAL hGlobal = LoadResource(NULL, hRsrc);
 
  
-         // 锁定资源,并返回指向资源第一字节的指针
 
 -         LPVOID lpRes = LockResource(hGlobal);
 
 -         HANDLE hFile = CreateFile(szFileName, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
 
 -         DWORD dwWriten = 0;
 
 -         BOOL bRes = WriteFile(hFile, lpRes, dwSize, &dwWriten, NULL);
 
 -         CloseHandle(hFile);
 
 -         /*
 
 -         CloseHandle(hGlobal);
 
 -         CloseHandle(hRsrc);
 
 -         */
 
 -         return TRUE;
 
 - }
 
  复制代码 
 
两种方法,  第一把你函数的CHAR*参数改成WCHAR*,第二把字符集改成多字节字符集 
 
 
 |   
 
 
 
 |