/SUBSYSTEM
(指定子系统)
指定可执行文件所面向的 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。