项目-win32应用程序(空项目)
一下是程序:
#include<windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)
{
HWND hwnd;
MSG Msg;
WNDCLASS wndclass;
TCHAR lpszClassName[]=TEXT("窗口");
TCHAR lpszTitle[]=TEXT("我的窗口"); //定义窗口类
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wndclass.hInstance=hInstance;
wndclass.lpfnWndProc=WndProc;
wndclass.lpszClassName=lpszClassName;
wndclass.lpszMenuName=NULL;
wndclass.style=0; //注册窗口类
if(!RegisterClass(&wndclass))
{
MessageBeep(0);
return FALSE;
} //创建窗口
hwnd=CreateWindowExW(
WS_OVERLAPPEDWINDOW,
lpszClassName,
lpszTitle,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL
); //显示窗口
ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd); //消息循环
while(GetMessage(&Msg,hwnd,0,0))
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
switch(message)
{
case WM_DESTROY:
PostQuitMessage(0);
default:
return DefWindowProc(hwnd,message,wParam,lParam);
}
return 0;
}编译出现一下错误:
1>------ 已启动生成: 项目: CreateWindow_test, 配置: Debug Win32 ------
1>正在编译...
1>CreateWnd.cpp
1>c:\documents and settings\asus\my documents\visual studio 2008\projects\createwindow_test\createwindow_test\createwnd.cpp(44) : error C2664: “CreateWindowExW”: 不能将参数 2 从“TCHAR [5]”转换为“LPCWSTR”
1>        与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>生成日志保存在“file://c:\Documents and Settings\asus\My Documents\Visual Studio 2008\Projects\CreateWindow_test\CreateWindow_test\Debug\BuildLog.htm”
1>CreateWindow_test - 1 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========