VC釋放資源檔案DLL,EXE等。。。

2021-07-07 01:14:14 字數 1321 閱讀 1574

/**

@name: releaseresfile

@brief 釋放資源檔案

@param: word wresid 資源id

@param: lpctstr szrestype 資源型別

@param: lpctstr szfilename 釋放後的檔名稱

@return: 成功true,釋放false

*/bool releaseresfile(word wresid, lpctstr szrestype, lpctstr szfilename)

// 建立檔案

dword dwsharemode = file_share_write | file_share_read | file_share_delete;

handle hfile = createfile(szfilename, generic_write, dwsharemode, null, create_always, file_attribute_normal, null);

if (hfile == invalid_handle_value )

hrsrc hrsc = findresource(null, makeintresource(wresid), szrestype); // 查詢資源

hglobal hg = loadresource(null, hrsc); // 載入資源

dword dwsize = sizeofresource(null, hrsc); // 獲取資源大小

if(dwsize <= 0)

// 寫入檔案

dword dwwrite = 0;

writefile(hfile, hg, dwsize, &dwwrite, null);

closehandle(hfile);

return dwwrite > 0;

}

// 釋放資源dll

char szproxydll[max_path] = ;

getmodulefilename(null, szproxydll, sizeof(szproxydll));

pathremovefilespec(szproxydll);

cstring strproxydll(szproxydll);

strproxydll += "\\proxydll.dll";

releaseresfile(idr_proxy_dll, "dll", strproxydll.getbuffer());

C C VC 中釋放自身資源檔案

函式功能 釋放資源檔案 引數說明 dword dwresname 指定要釋放的資源id號,如idr exe lpcstr lprestype 指定釋放的資源的資源型別 lpcstr lpfilepathname 指定釋放後的目標檔名 返回值 成功則返回true,失敗返回false bool free...

VC資源分配 釋放表

資源 分配函式 清除函式 需要手動清除 accelerators loadaccelerators n a no atoms globaladdatom globalfreeatom yesbitmaps createbitmap deleteobject yes createbitmapindir...

C 資源檔案

獲取資源檔案 using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using system...