생성된 실행 파일이 실행될 수 있는 하위 시스템의 최소 버전을 지정하여 실행 파일이 실행될 수 있는 Windows 버전을 결정합니다. 가장 일반적으로 이 옵션은 실행 파일이 이전 버전의 Windows에서 사용할 수 없는 특정 보안 기능을 활용할 수 있도록 합니다.
비고
하위 시스템 자체를 지정하려면 -target 컴파일러 옵션을 사용합니다.
문법
-subsystemversion:major.minor
매개 변수
major.minor
주 버전 및 부 버전에 대한 점 표기법으로 표현된 하위 시스템의 최소 필수 버전입니다. 예를 들어 이 항목의 뒷부분에 설명된 대로 이 옵션의 값을 6.01로 설정하면 Windows 7보다 오래된 운영 체제에서 애플리케이션을 실행할 수 없도록 지정할 수 있습니다. 값을 정수로 minor 지정 major 해야 합니다.
minor 버전에서 선행 0은 버전을 변경하지 않지만 후행 0은 버전을 변경합니다. 예를 들어 6.1과 6.01은 동일한 버전을 가리키지만 6.10은 다른 버전을 가리킵니다. 혼동을 피하기 위해 부 버전을 두 자리로 표현하는 것이 좋습니다.
비고
다음 표에는 Windows의 일반적인 하위 시스템 버전이 나와 있습니다.
| Windows 버전 | 하위 시스템 버전 |
|---|---|
| 윈도우 서버 2003 | 5.02 |
| 윈도우 비스타 | 6.00 |
| Windows 7 | 6.01 |
| 윈도우 서버 2008 | 6.01 |
| Windows 8 | 6.02 |
기본값
-subsystemversion 컴파일러 옵션의 기본값은 다음 목록의 조건에 따라 달라집니다.
다음 목록의 컴파일러 옵션이 설정된 경우 기본값은 6.02입니다.
MSBuild를 사용하고 .NET Framework 4.5를 대상으로 하며, 이 목록의 앞에서 지정된 컴파일러 옵션 중 하나를 설정하지 않은 경우 기본값은 6.00입니다.
이전 조건이 true가 아니면 기본값은 4.00입니다.
이 옵션 설정
Visual Studio에서 -subsystemversion 컴파일러 옵션을 설정하려면 .vbproj 파일을 열고 MSBuild XML에서 속성 값을 SubsystemVersion 지정해야 합니다. Visual Studio IDE에서는 이 옵션을 설정할 수 없습니다. 자세한 내용은 이 항목의 앞부분에 있는 "기본값" 또는 공통 MSBuild 프로젝트 속성을 참조하세요.
참고하십시오
.NET