/SUBSYSTEM (하위 시스템 지정)

실행 파일이 대상으로 하는 Windows 하위 시스템을 지정합니다.

구문

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

인수

BOOT_APPLICATION
Windows 부팅 환경에서 실행되는 애플리케이션입니다. 부팅 애플리케이션에 대한 자세한 내용은 BCD 정보를 참조하세요.

CONSOLE
Win32 문자 모드 애플리케이션. 운영 체제는 콘솔 애플리케이션에 콘솔을 제공합니다. 네이티브 코드 int main(array<String ^> ^) 에 대해 정의되거나wmain, 관리 코드에 대해 정의되거나, 애플리케이션을 완전히 사용하여 /clr:safe빌드하는 경우 main CONSOLE이 기본값입니다.

EFI_APPLICATION
EFI_BOOT_SERVICE_DRIVER
EFI_ROM
EFI_RUNTIME_DRIVER
확장 가능한 펌웨어 인터페이스 하위 시스템입니다. 자세한 내용은 UEFI 사양을 참조하세요. 예제는 Intel UEFI 드라이버 및 애플리케이션 도구 리소스를 참조하세요. 최소 버전 및 기본 버전은 1.0입니다.

NATIVE
Windows NT용 커널 모드 드라이버입니다. 이 옵션은 일반적으로 Windows 시스템 구성 요소용으로 예약됩니다. 지정된 NATIVE 경우 /DRIVER:WDM 기본값입니다.

POSIX
Windows NT에서 POSIX 하위 시스템을 사용하여 실행되는 애플리케이션입니다.

WINDOWS
애플리케이션은 사용자와의 상호 작용을 위해 자체 창을 만들기 때문에 콘솔이 필요하지 않습니다. 네이티브 코드에 대해 정의되거나 wWinMain(HINSTANCE *, HINSTANCE *, wchar_t *, int)wWinMainWinMain(HINSTANCE *, HINSTANCE *, char *, int) 관리 코드 WINDOWS 에 대해 정의된 경우 WinMain 기본값입니다.

majorminor
(선택 사항) 하위 시스템의 최소 필수 버전을 지정합니다. 인수는 0에서 65,535까지의 소수 자릿수입니다. 버전 번호의 상한은 없습니다.

설명

/SUBSYSTEM 옵션은 실행 파일에 대한 환경을 지정합니다.

하위 시스템의 선택은 링커가 선택할 진입점 기호(또는 진입점 함수)에 영향을 줍니다.

하위 시스템에 대한 선택적 최소 및 기본 majorminor 버전 번호는 다음과 같습니다.

하위 시스템 최소 기본값
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 (with /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
EFI_APPLICATION, EFI_BOOT_SERVICE_DRIVER, EFI_ROM, EFI_RUNTIME_DRIVER 1.0 1.0

Visual Studio 개발 환경에서 이 링커 옵션을 설정하려면

  1. 프로젝트의 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 C++ 컴파일러 및 빌드 속성 설정을 참조하세요.

  2. 구성 속성>링커>시스템 속성 페이지를 선택합니다.

  3. SubSystem 속성을 수정합니다.

프로그래밍 방식으로 이 링커 옵션을 설정하려면

참고 항목

MSVC 링커 참조
MSVC 링커 옵션