簡體   English   中英

另一個win32問題

[英]another win32 problem

這里有一個問題,用c ++和win32 api創建一個子窗口。 如果我檢查getLastError函數它返回“87”但我不知道這意味着什么。 我知道我的代碼不包含錯誤,有人可以查看我的代碼並幫我弄清楚它是什么問題。

(這是在WinProc WM_CREATE部分。)

        HWND hChildWindow   =   CreateWindowEx(WS_EX_CLIENTEDGE,0,NULL,WS_OVERLAPPEDWINDOW|WS_VISIBLE,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,hwnd,0,GetModuleHandle(0),NULL);
    if(!hChildWindow)
    {
         char text[256];
             int errormsg = (int)GetLastError();
             sprintf(text,"Error# %i",errormsg);
             MessageBox(0,text,"Error",MB_OK|MB_ICONEXCLAMATION);   
         return false;
    }

CreateWindowEx的第二個參數是一個窗口類(字符串或ATOM )。 顯然, NULL不是有效值。

PS

據我所知,我的代碼不包含錯誤......

小心這樣一個響亮的短語。 某些東西不起作用時,應仔細檢查所有東西。 否則你可能只是指責一些人沒有任何好處來解決這個問題。 檢查所有內容與標准/文檔/規范/等。 在你作出任何判斷之前。

87 =無效參數 - 請注意您可以使用FormatMessage從錯誤代碼中獲取字符串消息。

快速查看系統錯誤代碼參考指示ERROR_INVALID_PARAMETER 您最有可能將無效的樣式/標志組合傳遞給窗口。

暫無
暫無

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

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