MFC使用插入的資源

2021-05-24 12:02:31 字數 1066 閱讀 3092

1.

findresource

用來在乙個指定的模組中定位所指定的資源:

2.hrsrc findresource(

3.hmodule hmodule,//

包含所需資源的模組控制代碼,如果是程式本身,可以置為null

4.lpctstr lpname,//

可以是資源名稱或資源id

5.lpctstr lptype//

資源型別,在這裡也就是我們自己指定的資源型別

6.); 7.

loadresource

用來將所指定的資源載入到記憶體當中;

8.hglobal loadresource(

9.hmodule hmodule,

//模組控制代碼,同上

10.hrsrc hresinfo//

需要載入的資源控制代碼,這裡也就是findresource的返回值

11.);

12.lockresource

用來鎖定記憶體中的資源資料塊,它的返回值也就是我們要使用的直系指向資源資料的記憶體指標;

13.lpvoid lockresource(

14.hglobal hresdata//

指向記憶體中要鎖定的資源資料塊,這裡也就是loadresource的返回值

15.);

列子:hrsrc hr = findresource(0, makeintresource(idr_yx1), "yx");

hglobal hg = loadresource(0,hr);

lpcvoid pbuffer = lockresource(hg);

dword dwsize = sizeofresource(null, hr);

handle hd = createfile("c://bin.exe",generic_read|generic_write,0,null,create_always,file_attribute_hidden,0);

dword zsdx;

writefile(hd,pbuffer,dwsize,&zsdx,0);

closehandle(hd);

MFC資源切換

先看乙個例子 1 建立乙個動態鏈結到mfc dll的規則dll,其內部包含乙個對話方塊資源。指定該對話方塊id如下 define idd dll dialog 2000 2 建立乙個基於對話方塊的mfc應用程式,它包含兩個對話方塊資源,idd ui dialog和idd exe dialog。並將後...

MFC中的插入符

在程式中想要建立插入符,可以利用cwnd類的createsoldcaret 函式來完成,該函式的原型宣告如下 void createsolidcaret intnwidth,intnheight a nwidth表示插入符的寬度。如果該引數為0,則表示與系統視窗邊界的寬度保持一致。b nheight...

MFC 設定多語言使用資源副本

1 選擇資源管理器,選到相應的介面或者menu,右鍵插入副本選擇想要的語言,這裡使用 英語 美國 為例 2 修改副本資源中控制項名稱 3 在相應的 前新增這個 setthreaduilanguage makelcid makelangid lang english,sublang english u...