譬如说你创建了个控制台程序,运行的时候你不想让它弹出DOS窗口,怎么办?
把这句加上就行了:#pragma comment( linker, "/subsystem:windows /entry:mainCRTStartup" ),默认情况下/subsystem 和/entry开关是匹配的,如Console 和 mainCRTStartup匹配。
千万别写成:#pragma comment( linker, "/subsystem:windows /entry:WinMainCRTStartup" )否则会报error LNK2019。因为你函数入口点是main而不是Winmain.这里的入口点指的是windows进入可执行文件的代码前,会产生一个控制台窗口。
注意上面的pragma语句中的/subsystem:console 如果你创建的是一个GUI程序那么这时应该使用
"/subsystem:windows 。
MFC程序默认为/subsystem:windows。
#pragma comment( linker, "/subsystem:windows /entry:WinMainCRTStartup" )
// #pragma comment( linker, "/subsystem:windows /entry:mainCRTStartup" )
当然您还可以在工程中设置,具体路径为:
VS2008下 project properties->Configuration properties->Linker->System->Subsystem的下拉菜单中选择。