标题:VC 软件默认生成的工程
只看楼主
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
结帖率:79.17%
 问题点数:0 回复次数:0 
VC 软件默认生成的工程
使用 VC 软件默认生成的工程 怎么总是控制台工程呢 ?比如下面的代码:
#include <windows.h>

LONG WINAPI WndProc(HWND,UINT,WPARAM,LPARAM);

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
                   LPSTR lpszCmdLine, int nCmdShow)
{
           WNDCLASS wc;
           HWND hwnd;
           MSG msg;
           
           wc.style = 0;
           wc.lpfnWndProc = (WNDPROC) WndProc;
           wc.cbClsExtra = 0;
           wc.cbWndExtra = 0;
           wc.hInstance = hInstance;
           wc.hIcon = LoadIcon(NULL,IDI_WINLOGO);
           wc.hCursor = LoadCursor(NULL,IDC_ARROW);
           wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
           wc.lpszMenuName = NULL;
           wc.lpszClassName = "MyWndClass";
           
           RegisterClass(&wc);
           hwnd = CreateWindow(
                "MyWndClass",
                "SDK Application",
                WS_OVERLAPPEDWINDOW,
                CW_USEDEFAULT,
                CW_USEDEFAULT,
                CW_USEDEFAULT,
                CW_USEDEFAULT,
                HWND_DESKTOP,
                NULL,
                hInstance,
                NULL
           );
           
           ShowWindow(hwnd,nCmdShow);
           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)
{
          PAINTSTRUCT ps;
          HDC hdc;
         
          switch(message)
          {
               case WM_PAINT:
                    hdc = BeginPaint(hwnd,&ps);
                    Ellipse(hdc,0,0,200,100);
                    EndPaint(hwnd,&ps);
                    return 0;
               
               case WM_DESTROY:
                    PostQuitMessage(0);
                    return 0;
          }
         
          return DefWindowProc(hwnd,message,wParam,lParam);
}
明明是一个win32 api 代码,带式使用vc软件直接双击打开后,重新编译提示
Compiling...
椭圆.cpp
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/椭圆.exe : fatal error LNK1120: 1 unresolved externals
_main是控制台程序的入口,显然生成了 控制台程序
能在哪里设置修改工程模式吗?难道一定要从new 中建立一个 window 程序吗 ?
搜索更多相关主题的帖子: 工程 软件 
2008-04-15 00:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-209060-1-1.html




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

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