簡體   English   中英

c ++未處理的異常LoadImage()和MAKEINTRESOURCE

[英]c++ unhandled exception LoadImage() with MAKEINTRESOURCE

我在將一個位圖圖像添加到靜態控制框時遇到問題,當我運行我的程序時,我得到了一個未處理的異常。 這是我的代碼。

來自RC文件:

ID_ICON1    BITMAP  "icon1.bmp"

CPP文件:

HANDLE bIcon1;
HWND hIcon;             
hIcon = CreateWindowEx(0, "Static", NULL, WS_CHILD | WS_VISIBLE|SS_BITMAP, 250, 100, 100, 100, hwnd, NULL, GetModuleHandle(NULL), NULL);
bIcon1 = LoadImage(GetModuleHandle(NULL), MAKEINTRESOURCE(ID_ICON1), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE| LR_DEFAULTSIZE);

如果我使用完整路徑我沒有錯誤,bmp顯示正確:

bIcon1 = LoadImage(GetModuleHandle(NULL), "c:\\icon1.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE| LR_DEFAULTSIZE);

謝謝你的幫助:)

編輯:異常的行是這一行:

bIcon1 = LoadImage(GetModuleHandle(NULL), MAKEINTRESOURCE(ID_ICON1), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE| LR_DEFAULTSIZE);

消息異常是:windows2.exe中0x7768e41b處的未處理異常:0xC0000005:訪問沖突讀取位置0x000001f4。

windows2.exe!WndProc(HWND__ * hwnd,unsigned int msg,unsigned int wParam,long lParam)第153行+ 0x27字節C ++

您正在傳遞LR_LOADFROMFILE但第二個參數不是文件名。 刪除該標志。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM