| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 706 人关注过本帖
标题:[求助]最简单的窗口 怎么编译不出来?
只看楼主 加入收藏
Lsaint
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2005-9-7
收藏
 问题点数:0 回复次数:1 
[求助]最简单的窗口 怎么编译不出来?
我照着《windows程序设计》里面调试一段显示1个简单窗口的代码

照着书上复制过去为什么编译不出来?

我设置工程是win32 console application  文件是c++ source file
报错和代码如下  请高手帮帮忙 我是菜鸟刚开始接触vc





E:\VC\ConApp\111.cpp(19) : error C2065: 'WNDCLASwndclass' : undeclared identifier
E:\VC\ConApp\111.cpp(22) : error C2065: 'wndclass' : undeclared identifier
E:\VC\ConApp\111.cpp(22) : error C2228: left of '.style' must have class/struct/union type
E:\VC\ConApp\111.cpp(24) : error C2228: left of '.lpfnWndProc' must have class/struct/union type
E:\VC\ConApp\111.cpp(26) : error C2228: left of '.cbClsExtra' must have class/struct/union type
E:\VC\ConApp\111.cpp(28) : error C2228: left of '.cbWndExtra' must have class/struct/union type
E:\VC\ConApp\111.cpp(30) : error C2228: left of '.hInstance' must have class/struct/union type
E:\VC\ConApp\111.cpp(32) : error C2228: left of '.hIcon' must have class/struct/union type
E:\VC\ConApp\111.cpp(34) : error C2228: left of '.hCursor' must have class/struct/union type
E:\VC\ConApp\111.cpp(36) : error C2228: left of '.hbrBackground' must have class/struct/union type
E:\VC\ConApp\111.cpp(38) : error C2228: left of '.lpszMenuNam' must have class/struct/union type
E:\VC\ConApp\111.cpp(40) : error C2228: left of '.lpszClassName' must have class/struct/union type


HELLOWIN.C
        
/*------------------------------------------------------------------------
        
  HELLOWIN.C -- Displays "Hello, Windows 98!" in client area
        
                 (c) Charles Petzold, 1998
        
-----------------------------------------------------------------------*/
        
#include <windows.h>
        

LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;
        

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
        
                   PSTR szCmdLine, int iCmdShow)
        
{
        
    static TCHAR szAppName[] = TEXT ("HelloWin") ;
        
    HWND   hwnd ;
        
    MSG    msg ;
        
    WNDCLASwndclass ;
        

   wndclass.style        = CS_HREDRAW | CS_VREDRAW ;
        
   wndclass.lpfnWndProc  = WndProc ;
        
    wndclass.cbClsExtra   = 0 ;
        
    wndclass.cbWndExtra   = 0 ;
        
    wndclass.hInstance    = hInstance ;
        
    wndclass.hIcon        = LoadIcon (NULL, IDI_APPLICATION) ;
        
  wndclass.hCursor      = LoadCursor (NULL, IDC_ARROW) ;
        
   wndclass.hbrBackground= (HBRUSH) GetStockObject (WHITE_BRUSH) ;
        
  wndclass.lpszMenuNam  = NULL ;
        
    wndclass.lpszClassName= szAppName ;
        

    if (!RegisterClass (&wndclass))
        
    {
        
            MessageBox (  NULL, TEXT ("This program requires Windows NT!"),
        
                                  szAppName, MB_ICONERROR) ;
        
            return 0 ;
        
    }
        
    hwnd = CreateWindow( szAppName,      // window class name
        
                   TEXT ("The Hello Program"),   // window caption
        
                   WS_OVERLAPPEDWINDOW,  // window style
        
                   CW_USEDEFAULT,// initial x position
        
                   CW_USEDEFAULT,// initial y position
        
                   CW_USEDEFAULT,// initial x size
        
                   CW_USEDEFAULT,// initial y size
        
                   NULL,                 // parent window handle
        
               NULL,            // window menu handle
        
               hInstance,   // program instance handle
        
               NULL) ;      // creation parameters
        
   
        
    ShowWindow (hwnd, iCmdShow) ;
        
    UpdateWindow (hwnd) ;
        
   
        
    while (GetMessage (&msg, NULL, 0, 0))
        
    {
        
            TranslateMessage (&msg) ;
        
          DispatchMessage (&msg) ;
        
    }
        
    return msg.wParam ;
        
}
        

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
        
{
        
    HDC                   hdc ;
        
    PAINTSTRUCT ps ;
        
    RECT          rect ;
        
   
        
    switch (message)
        
    {
        
    case WM_CREATE:
        
    PlaySound (TEXT ("hellowin.wav"), NULL, SND_FILENAME | SND_ASYNC) ;
        
            return 0 ;
        

    case   WM_PAINT:
        
            hdc = BeginPaint (hwnd, &ps) ;
        
        
        
            GetClientRect (hwnd, &rect) ;
        
        
        
            DrawText (hdc, TEXT ("Hello, Windows 98!"), -1, &rect,
        
                   DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
        
                 EndPaint (hwnd, &ps) ;
        
                   return 0 ;
        
        
        
    case   WM_DESTROY:
        
            PostQuitMessage (0) ;
        
            return 0 ;
        
    }
        
  return DefWindowProc (hwnd, message, wParam, lParam) ;
        
}
        
搜索更多相关主题的帖子: 窗口 编译 
2005-09-07 21:50
ChenMo
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:3
帖 子:481
专家分:10
注 册:2004-4-8
收藏
得分:0 
用 Win32 application,Console 工程是开发控制台应用程序的。

欢迎加入 MVC 技术讨论群(新群:90093426)
2005-09-10 11:04
快速回复:[求助]最简单的窗口 怎么编译不出来?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023275 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved