您的位置:首页 > 其它

/subsystem:windows 与 /subsystem:console

2016-07-07 20:10 253 查看
1、操作系统装载应用程序后,做完初始化工作就转到程序的入口点执行。程序的默认入口点实际上是由连接程序设置的,不同的连接器选择的入口函数也不尽相 同。

2、在VC++下,

连接器对控制台程序设置的入口函数是 mainCRTStartup,mainCRTStartup 再调用你自己编写的 main 函数;

对图形用户界面(GUI)程序设置的入口函数是 WinMainCRTStartup,WinMainCRTStartup 调用你自己写的 WinMain 函数。

3、而具体设置哪个入口点是由连接器的“/subsystem:”选项参数确定的,它告诉操作系统如何运行编译生成的.EXE文件。

可以指定四种方 式:“CONSOLE|WINDOWS|NATIVE|POSIX”

CONSOLE

win32 字符模式应用程序,此种类型的应用程序在运行的时候会产生一个类似DOS

窗口的控制台窗口,如果在应用程序的主函数为main()或者wmain()时,在默认情况下

该应用程序就是一个控制台应用程序 。


WINDOWS

该类型的应用程序不产生console窗口,该类型的应用程序的窗口由用户自己创建,简而言之

就是一个标准的Win32 application,其入口地址为WinMain()函数或者wWinMain()函数的地址,

如果你在应用程序中定义的主函数为WinMain或者wWinMain,在默认情况下该应用程序就是一个

Win32 Application !


NATIVE

设备驱动器选项,如果/DRIVER:WDM选项被设定的话,该链接选项(NATIVE)就为默认选项 。


WINDOWSCE

运行在windows CE上的应用程序。


POSIX

在windows NT 种运行在POSIX子系统上的应用程序。

[,left[,right]]:

主版本号和次版本号,该选项为可选,该选项为0~65535之间的十进制整数,CONSOLE, WINDOWS, and NATIVE 默认的版本号为4.00;

POSIX默认的版本号为19.90。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  操作系统