指定可执行文件所面向的 Windows 子系统。
语法
[.]
EFI_BOOT_SERVICE_DRIVER|EFI_ROM|EFI_RUNTIME_DRIVER|NATIVE|
%>
参数
BOOT_APPLICATION
在 Windows 启动环境中运行的应用程序。 有关启动应用程序的详细信息,请参阅关于 BCD。
CONSOLE
Win32 字符模式应用程序。 操作系统提供为控制台应用程序提供控制台。 如果 main 或 wmain 为本机代码定义,int main(array<String ^> ^) 则为托管代码定义,或者使用 /clr:safe 完全生成应用程序,则 CONSOLE 是默认值。
EFI_APPLICATION
EFI_BOOT_SERVICE_DRIVER
EFI_ROM
EFI_RUNTIME_DRIVER
可扩展固件接口子系统。 有关详细信息,请参阅 UEFI 规范。 有关示例,请参阅 Intel UEFI 驱动程序和应用程序工具资源。 最低版本和默认版本为 1.0。
NATIVE
Windows NT 的内核模式驱动程序。 此选项通常为 Windows 系统组件而保留。 如果指定了 /DRIVER:WDM,则 NATIVE 为默认值。
POSIX
与 Windows NT 中的 POSIX 子系统一起运行的应用程序。
WINDOWS
此应用程序不需要控制台,可能是因为它会创建自己的窗口以与用户交互。 如果 WinMain 或 wWinMain 为本机代码定义,或者 WinMain(HINSTANCE *, HINSTANCE *, char *, int) 或 wWinMain(HINSTANCE *, HINSTANCE *, wchar_t *, int) 为托管代码定义,则 WINDOWS 为默认值。
major 和 minor
(可选)指定子系统所需的最低版本。 该参数是介于 0 到 65,535 之间的十进制数字。 版本号没有上限。
注解
/SUBSYSTEM 选项为可执行文件指定环境。
子系统的选择会影响链接器将选择的入口点符号(或入口点函数)。
子系统的可选最小值和默认的 major 和 minor 版本号如下所示:
| 子系统 | 最小值 | 默认值 | 
|---|---|---|
| BOOT_APPLICATION | 1.0 | 1.0 | 
| CONSOLE | 5.01 (x86) 5.02 (x64) 6.02 (ARM) | 6.00 (x86, x64) 6.02 (ARM) | 
| WINDOWS | 5.01 (x86) 5.02 (x64) 6.02 (ARM) | 6.00 (x86, x64) 6.02 (ARM) | 
| NATIVE(带有/DRIVER:WDM) | 1.00 (x86) 1.10 (x64, ARM) | 1.00 (x86) 1.10 (x64, ARM) | 
| NATIVE(不带/DRIVER:WDM) | 4.00 (x86) 5.02 (x64) 6.02 (ARM) | 4.00 (x86) 5.02 (x64) 6.02 (ARM) | 
| POSIX | 1.0 | 19.90 | 
| 1.0 | 1.0 | 
在 Visual Studio 开发环境中设置此链接器选项
- 打开项目的“属性页” 对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性。 
- 选择“配置属性”>“链接器”>“系统”属性页面 。 
- 修改“子系统”属性。 
以编程方式设置此链接器选项
- 请参阅 SubSystem。