我用MFC做了一个对话框,确定按钮的click事件中的一段代码是用win32 api做的,代码如下:
void CchangeDlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
if (str_text!="")
//MessageBox(_T("读取数据"));
// Register the window class
WNDCLASSEX wc = { sizeof(WNDCLASSEX), CS_CLASSDC, MsgProc, 0L, 0L,
GetModuleHandle(NULL), NULL, NULL, NULL, NULL,
"D3D Tutorial", NULL };
RegisterClassEx( &wc );
// Create the application's window
HWND hWnd = CreateWindow( "D3D Tutorial", "D3D Tutorial 3ds Rendering",
WS_OVERLAPPEDWINDOW, 100, 100, 300, 300,
NULL, NULL, wc.hInstance, NULL );
// Initialize Direct3D
if( SUCCEEDED( InitD3D( hWnd ) ) )
{
// Create the scene geometry
if( SUCCEEDED( InitGeometry() ) )
{
// Show the window
ShowWindow( hWnd, SW_SHOWDEFAULT );
UpdateWindow( hWnd );
// Enter the message loop
MSG msg;
ZeroMemory( &msg, sizeof(msg) );
while( msg.message!=WM_QUIT )
{
if( PeekMessage( &msg, NULL, 0U, 0U, PM_REMOVE ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
else
Render();
}
}
}
UnregisterClass( "D3D Tutorial", wc.hInstance );
//return 0;
else
{
MessageBox(_T("请输入文件路径"));
OnOK();
}
}
运行报错:
error C3861: “timeGetTime”: 找不到标识符
error C2065: “wc”: 未声明的标识符
error C2228: “.hInstance”的左边必须有类/结构/联合类型是“'unknown-type'”
error C2660: “CWnd::ShowWindow”: 函数不接受 2 个参数
error C2660: “CWnd::UpdateWindow”: 函数不接受 1 个参数
error C2228: “.hInstance”的左边必须有类/结构/联合类型是“'unknown-type'”
error C2181: 没有匹配 if 的非法 else
其实这些错误都是一个原因造成的,就是程序没有识别出在mmsystem.h中的timeGetTime定义和winuster.h中的WNDCLASSEX等类的定义。我在头文件中加了这些头文件还是这些报错。
汪汪一只猫
犯罪嫌疑人X
相关分类