Export (0) Print
Expand All
Expand Minimize
7 out of 8 rated this helpful - Rate this topic

/SUBSYSTEM (Specify Subsystem)

/SUBSYSTEM:{CONSOLE|EFI_APPLICATION|EFI_BOOT_SERVICE_DRIVER|
            EFI_ROM|EFI_RUNTIME_DRIVER|NATIVE|POSIX|WINDOWS|WINDOWSCE}
            [,major[.minor]]

where:

CONSOLE
Win32 character-mode application. Console applications are given a console by the operating system. If main or wmain is defined, CONSOLE is the default.
Extensible Firmware Interface
The EFI_* subsystems. See the EFI specification for more information. For example, see the Intel web site. The minimum version and default version is 1.0.
NATIVE
Device drivers for Windows NT. If /DRIVER:WDM is specified, NATIVE is the default.
POSIX
Application that runs with the POSIX subsystem in Windows NT.
WINDOWS
Application does not require a console, probably because it creates its own windows for interaction with the user. If WinMain or wWinMain is defined, WINDOWS is the default.
WINDOWSCE
Application that runs on a Windows CE device.
major and minor (optional)
Specify the minimum required version of the subsystem. The arguments are decimal numbers in the range 0 through 65,535. See the Remarks for details. There are no upper bounds for version numbers.

Remarks

The /SUBSYSTEM option tells the operating system how to run the .exe file.

The choice of subsystem affects the default starting address for the program. For more information, see the Entry-Point Symbol (/ENTRY:function) option.

The optional minimum and default major and minor version numbers for the subsystems are as follows.

Subsystem Minimum Default
CONSOLE 3.10 (x86)
5.01 (Itanium)
4.00 (x86)
5.01 (Itanium)
WINDOWS 3.10 (x86)
5.01 (Itanium)
4.00 (x86)
5.01 (Itanium)
NATIVE (with DRIVER:WDM) 1.00 (x86)
1.10 (Itanium)
1.00 (x86)
1.10 (Itanium)
NATIVE (without /DRIVER:WDM) 3.10 (x86)
5.01 (Itanium)
4.00 (x86)
5.01 (Itanium)
POSIX 1.0 19.90
WINDOWSCE 1.0 2.0

To set this linker option in the Visual Studio development environment

  1. Open the project's Property Pages dialog box. For details, see Setting Visual C++ Project Properties.
  2. Click the Linker folder.
  3. Click the System property page.
  4. Modify the SubSystem property.

To set this linker option programmatically

See SubSystem Property.

See Also

Setting Linker Options | Linker Options

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.