/SUBSYSTEM (Especificar subsistema)

Especifique el subsistema de Windows destinado al ejecutable.

Sintaxis

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

Argumentos

BOOT_APPLICATION
Aplicación que se ejecuta en el entorno de arranque de Windows. Para más información sobre las aplicaciones de arranque, vea Acerca de BCD.

CONSOLE
Aplicación de modo de caracteres Win32. El sistema operativo proporciona una consola para las aplicaciones de consola. Si se define main o wmain para código nativo, se define int main(array<String ^> ^) para código administrado o la aplicación se compila por completo mediante /clr:safe, CONSOLE es el valor predeterminado.

EFI_APPLICATION
EFI_BOOT_SERVICE_DRIVER
EFI_ROM
EFI_RUNTIME_DRIVER
Los subsistemas de Interfaz de firmware extensible. Para más información, consulte la especificación UEFI. Para obtener ejemplos, consulte los recursos de herramientas de aplicación y controladores Intel UEFI. La versión mínima y la versión predeterminada es 1.0.

NATIVE
Controladores de modo kernel para Windows NT. Esta opción se reserva normalmente para los componentes del sistema operativo Windows. Si no se especifica /DRIVER:WDM, el valor predeterminado es NATIVE.

POSIX
Aplicación que se ejecuta con el subsistema POSIX en Windows NT.

WINDOWS
La aplicación no requiere una consola, probablemente porque crea sus propias ventanas de interacción con el usuario. Si se define WinMain o wWinMain para código nativo o se define WinMain(HINSTANCE *, HINSTANCE *, char *, int) o wWinMain(HINSTANCE *, HINSTANCE *, wchar_t *, int) para código administrado, WINDOWS es el valor predeterminado.

major y minor
(Opcional) Especifique la versión mínima requerida del subsistema. Los argumentos son números decimales comprendidos en el intervalo de 0 a 65.535. No existen límites superiores para los números de versión.

Comentarios

La opción /SUBSYSTEM especifica el entorno del ejecutable.

La opción de subsistema afecta al símbolo de punto de entrada (o función de punto de entrada) que el vinculador seleccionará.

Los números opcionales de versión mínima y predeterminada de major y minor para los subsistemas son los siguientes:

Subsistema Mínimo Valor predeterminado
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 (con /DRIVER:WDM) 1.00 (x86) 1.10 (x64) 6.02 (ARM) 1.00 (x86) 1.10 (x64) 6.02 (ARM)
NATIVE (sin /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
EFI_APPLICATION, EFI_BOOT_SERVICE_DRIVER, EFI_ROM, EFI_RUNTIME_DRIVER 1,0 1,0

Para establecer esta opción del vinculador en el entorno de desarrollo de Visual Studio

  1. Abra el cuadro de diálogo Páginas de propiedades del proyecto. Para más información, vea Establecimiento del compilador de C++ y de propiedades de compilación en Visual Studio.

  2. Seleccione la página de propiedades Propiedades de configuración>Enlazador>Sistema.

  3. Modifique la propiedad SubSystem.

Para establecer esta opción del vinculador mediante programación

Consulte también

Referencia del enlazador MSVC
Opciones del enlazador MSVC