2012-05-06 64 views

回答

0

我相信錯誤0xc007001f是當SetPixelFormat()失敗。這意味着,您正嘗試使用該卡不支持的像素格式中的某些功能。如果我沒有弄錯,英特爾顯卡幾乎不支持OpenGL(只有[編輯:2.1])。

+0

所有最新的卡的支持至少2.1 –

+0

感謝您的指正。我很久沒有用英特爾處理圖形了,我猜... – wquist

3

您可以將錯誤代碼分解爲其部分。 0xC使它成爲一個致命的錯誤,007產生的設施代碼是winapi。這使得最後四位Windows錯誤31:

// 
// MessageId: ERROR_GEN_FAILURE 
// 
// MessageText: 
// 
// A device attached to the system is not functioning. 
// 
#define ERROR_GEN_FAILURE    31L 

這使得它一個非常基本的設備驅動程序那樣的問題,假設你傳遞一個正確的設備上下文句柄wglCreateContext()。通常需要更新視頻驅動程序並確保安裝正確類型的OpenGL驅動程序。沒有什麼可以做的,當然,這是用戶需要解決的問題。你

0

也可以使用的FormatMessage獲得字符串錯誤描述:

DWORD err = GetLastError(); 
char* msg; 
FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_ALLOCATE_BUFFER, 0, err, 0, (LPCSTR)&msg, 0, 0); 
MessageBoxA(0, msg, "Error", 0); 
LocalFree(msg); 
相關問題