首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

求解关于Windows编程“出现宏展开中遇到意外的文件结束”的有关问题上面的是有关代码

2012-10-15 
求解关于Windows编程“出现宏展开中遇到意外的文件结束”的问题下面的是有关代码#includeWindows.h#includ

求解关于Windows编程“出现宏展开中遇到意外的文件结束”的问题下面的是有关代码
#include<Windows.h>
#include<tchar.h>
//声明消息回调函数
LRESULT CALLBACK WndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam);
//窗口类名和窗口标题
const TCHAR szWindowClass[]=L"第一个窗口";
const TCHAR szWindowTitle[]=L"主窗口标题";
//WinMain函数,入口点
int WINAPI_tWinMain(HINSTANCE hInstance,HINSTANCE hPreInstance,LPTSTR lpCmdLine,int nCmdShow)
{  
//注册窗口类
WNDCLASSEX wcex={0};//窗体结构体
wcex.cbSize=sizeof(WNDCLASSEX);
wcex.style=CS_HREDRAW|CS_VREDRAW;
wcex.lpfnWndProc=(WNDPROC)WndProc;
wcex.hInstance=hInstance;
wcex.hIcon=LoadIcon(NULL,IDI_APPLICATION);//使用系统默认的图标
wcex.hCursor=LoadCursor(NULL,IDC_ARROW);//使用系统默认的光标
wcex.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//白色画刷
wcex.lpszClassName=szWindowClass;
RegisterClassEx(&wcex);
//创建窗口
HWND hWnd=CreateWindow(
szWindowClass,//窗口类名
szWindowTitle,//窗口标题
WS_OVERLAPPEDWINDOW,//窗口风格
100,200,500,500,//左上角坐标以及宽度。高度
HWND_DESKTOP,
NULL,
hInstance,
NULL
};
  if(!hWnd)return FALSE;//如果窗体结构创建失败则退出
  //显示并更新窗口
  ShowWindow(hWnd,nCmdShow);
  UpdateWindow(hWnd);
  //进入消息循环
  MSG msg;
  while(GetMessage(&msg,NULL,0,0))
  {
TranslateMessage(&msg);
DispatchMessage(&msg);
  }
  return msg.wParam;
  }
  //窗口函数,用于消息处理
  LRESULT CALLBACK WndProc(HWND hwnd,UINT mag,WPARAM wParam,LPARAM lParam)
  {
switch(msg)
{
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(hWnd,msg,wParam,lParam);

}
  }


[解决办法]
是不是哪边用到宏的地方定义出错了,或者与系统定义的冲突了?
[解决办法]
偶遇到类似问题都是用
“每次用/*...*/注释掉不同部分再重新编译,直到定位到具体语法出错的位置。”
的方法解决的。

[解决办法]

C/C++ code
#include<Windows.h>#include<tchar.h>//声明消息回调函数LRESULT CALLBACK WndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam);//窗口类名和窗口标题const TCHAR szWindowClass[]=L"第一个窗口";const TCHAR szWindowTitle[]=L"主窗口标题";//WinMain函数,入口点int WINAPI _tWinMain(HINSTANCE hInstance,HINSTANCE hPreInstance,LPTSTR lpCmdLine,int nCmdShow){       //注册窗口类    WNDCLASSEX wcex={0};//窗体结构体    wcex.cbSize            =sizeof(WNDCLASSEX);    wcex.style            =CS_HREDRAW|CS_VREDRAW;    wcex.lpfnWndProc    =(WNDPROC)WndProc;    wcex.hInstance        =hInstance;    wcex.hIcon            =LoadIcon(NULL,IDI_APPLICATION);//使用系统默认的图标    wcex.hCursor        =LoadCursor(NULL,IDC_ARROW);//使用系统默认的光标    wcex.hbrBackground    =(HBRUSH)GetStockObject(WHITE_BRUSH);//白色画刷    wcex.lpszClassName    =szWindowClass;    RegisterClassEx(&wcex);    //创建窗体结构    HWND hWnd;     //定义窗体句柄    hWnd = CreateWindow(        szWindowClass,        L"mygame",        WS_OVERLAPPEDWINDOW,         0,     //窗体左上角相对于屏幕的X坐标        0,     //窗体左上角相对于屏幕的Y坐标        800,600,     //窗体的宽度和高度        NULL,     //父窗口句柄        NULL, //窗口菜单句柄        hInstance,        NULL);        if(!hWnd)return FALSE;//如果窗体结构创建失败则退出        //显示并更新窗口    ShowWindow(hWnd,nCmdShow);    UpdateWindow(hWnd);    //进入消息循环    MSG msg;    while(GetMessage(&msg,NULL,0,0))    {        TranslateMessage(&msg);        DispatchMessage(&msg);    }    return msg.wParam;}//窗口函数,用于消息处理LRESULT CALLBACK WndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam){    switch(msg)    {    case WM_DESTROY:        PostQuitMessage(0);        return 0;    default:        return DefWindowProc(hWnd,msg,wParam,lParam);    }} 

热点排行