是不是在MFC中不能用win32 api程序???我還是想用這個(gè)程序的,哪位高手告訴我如何改正?
我用MFC做了一個(gè)對(duì)話框,確定按鈕的click事件中的一段代碼是用win32 api做的,代碼如下:void CchangeDlg::OnBnClickedOk(){// TODO: 在此添加控件通知處理程序代碼if (str_text!="")//MessageBox(_T("讀取數(shù)據(jù)"));// Register the window classWNDCLASSEX wc = { sizeof(WNDCLASSEX), CS_CLASSDC, MsgProc, 0L, 0L, GetModuleHandle(NULL), NULL, NULL, NULL, NULL,"D3D Tutorial", NULL };RegisterClassEx( &wc );// Create the application's windowHWND hWnd = CreateWindow( "D3D Tutorial", "D3D Tutorial 3ds Rendering", WS_OVERLAPPEDWINDOW, 100, 100, 300, 300,NULL, NULL, wc.hInstance, NULL );// Initialize Direct3Dif( SUCCEEDED( InitD3D( hWnd ) ) ){ // Create the scene geometryif( SUCCEEDED( InitGeometry() ) ){// Show the windowShowWindow( hWnd, SW_SHOWDEFAULT );UpdateWindow( hWnd );// Enter the message loopMSG msg; ZeroMemory( &msg, sizeof(msg) );while( msg.message!=WM_QUIT ){if( PeekMessage( &msg, NULL, 0U, 0U, PM_REMOVE ) ){TranslateMessage( &msg );DispatchMessage( &msg );}elseRender();}}}UnregisterClass( "D3D Tutorial", wc.hInstance );//return 0;else{MessageBox(_T("請(qǐng)輸入文件路徑"));OnOK();}}運(yùn)行報(bào)錯(cuò):error C3861: “timeGetTime”: 找不到標(biāo)識(shí)符error C2065: “wc”: 未聲明的標(biāo)識(shí)符error C2228: “.hInstance”的左邊必須有類/結(jié)構(gòu)/聯(lián)合類型是“'unknown-type'”error C2660: “CWnd::ShowWindow”: 函數(shù)不接受 2 個(gè)參數(shù)error C2660: “CWnd::UpdateWindow”: 函數(shù)不接受 1 個(gè)參數(shù)error C2228: “.hInstance”的左邊必須有類/結(jié)構(gòu)/聯(lián)合類型是“'unknown-type'”error C2181: 沒(méi)有匹配 if 的非法 else 其實(shí)這些錯(cuò)誤都是一個(gè)原因造成的,就是程序沒(méi)有識(shí)別出在mmsystem.h中的timeGetTime定義和winuster.h中的WNDCLASSEX等類的定義。我在頭文件中加了這些頭文件還是這些報(bào)錯(cuò)。
查看完整描述