WinMain函数可以放在.lib(Win32 Static Library)中吗? 我把WinMain函数放在a.lib函数中,WinMain函数实现如下:
extern MyMain();
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
MyMain();
return 0;
}用VC建立一个新工程(Win32 Application),Setting中加入a.lib库,该工程有个文件:
void MyMain()
{
   return;
}
但编译出现错误:LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16请问:放在.lib中的WinMain函数应该如何使用?

解决方案 »

  1.   

    这个不行吧。 程序中必须有WinMain你可以把具体的实现代码放在dll中,然后在程序的WinMain中调用该函数。
      

  2.   

    WinMain函数可以放在.lib(Win32 Static Library)中吗? 
    不可以吧~~
    上面提示WINMAIN入口函数找不到~~
      

  3.   

    我认为是可以的,只是你创建 lib 项目的时候,可能有些环境与 Win32 Application 不太一致。而导致编译出来的 symbol 不完全一致 "_WinMain@16"。解决办法:你先创建一个有 WinMain 的 Win32 Application 项目,其中 WinMain 的写法就是你想要生成lib 时的写法。编译连接通过后,直接用相应的 .obj 文件来创建 lib。
    就是说,创建一个 lib 项目,只添加一个 obj 文件给他。
    估计这样的 lib 文件就可以使用。
      

  4.   

    to: sswater(光杆兵),按照你的方法做确实可以。 谢谢!!!