我才开始学vc就遇到问题,各位高手帮帮忙啊
代码是:
#include "windows.h"
int WINAPI WinMain()
{
MessageBox(NULL,TEXT("hi"),TEXT("Hi"),0);
return 0;
}
Compiling...
HelloMsg.c
D:\Visual Studio 6.0\MSDev98\MyProjects\Win32 Applicaion Step 1of 1\HelloMsg.c(3) : warning C4026: function declared with formal parameter list
Linking...
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/Win32 Applicaion Step 1of 1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.Win32 Applicaion Step 1of 1.exe - 2 error(s), 1 warning(s)

解决方案 »

  1.   

    #include "windows.h"
    int  main()
    {
    ::MessageBox(NULL,"Hi","Hi",MB_ICONINFORMATION);
    return 0;
    }你上面的那种
    int WINAPI WinMain()
    写法是WIN32 SDK程序的格式
    还需要消息循环的
      

  2.   

    >>#include "windows.h"
    改为
    #include <windows.h>对于用尖括号括起的, VC 将从预设的包含目录搜索头文件, 用双引号括起的, VC 只会在工程目录里找>> int WINAPI WinMain()
    WinMain 函数原型不是这样的, 你的定义必须跟声明(声明已经隐含在 windows.h 头文件中)一致, 原型是这样的:int WINAPI WinMain(
      HINSTANCE hInstance,      // handle to current instance
      HINSTANCE hPrevInstance,  // Win32 platform do not use
      LPSTR lpCmdLine,          // command line
      int nCmdShow              // show state
    );
      

  3.   

    #include <windows.h>int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                        PSTR szCmdLine, int iCmdShow)
    {
         MessageBox (NULL, TEXT ("Hello, Windows 98!"), TEXT ("HelloMsg"), 0) ;     return 0 ;
    }
      

  4.   

    采用MessageBox("",TEXT("Hi"),0);
    或: int i;
    i=MessageBox("",TEXT("Hi"),1);
    return i;
      

  5.   

    还可以用CString 然后再用AfxMessageBox
    或者Textout;
      

  6.   

    刚才头文件没看清楚
    应该这样
    #include <windows.h>
    int  main()
    {
    ::MessageBox(NULL,"Hi","Hi",MB_ICONINFORMATION);
    return 0;
    }
     zhuojohn(zhuojian) :
    你的那段程序是运行不起来的
      

  7.   

    哦~~
    看错了
    可以运行起来要建立WIN32SDK程序类型