<supportedRuntime> 요소
애플리케이션이 지원하는 공용 언어 런타임 버전 및 선택적으로 .NET Framework 버전을 지정합니다.
<구성>
<startup>
<supportedRuntime>
구문
<supportedRuntime version="runtime version" sku="SKU ID"/>
특성
특성 | Description |
---|---|
version | 선택적 특성입니다. 애플리케이션이 지원하는 공용 언어 런타임(CLR) 버전을 지정하는 문자열 값입니다. version 특성의 유효한 값은 "런타임 버전" 값 섹션을 참조하세요. 참고: .NET Framework 3.5에서는 "런타임 버전" 값이 major.minor.build 형식을 취합니다. .NET Framework 4부터는 주 버전 및 부 버전 번호만 필요합니다(즉, "v4.0.30319"가 아니라 "v4.0"만 필요). 짧은 문자열이 권장됩니다. |
sku | 선택적 특성입니다. 이 애플리케이션이 지원하는 .NET Framework 버전을 지정하는 SKU(Stock Keeping Unit)를 지정하는 문자열 값입니다. .NET Framework 4.0부터는 sku 특성을 사용하는 것이 좋습니다. 존재한다면 앱이 대상으로 하는 .NET Framework의 버전을 나타냅니다.sku 특성의 유효한 값은 "SKU ID" 값 섹션을 참조하세요. |
설명
<supportedRuntime> 요소가 애플리케이션 구성 파일에 없다면, 애플리케이션 빌드에 사용된 런타임 버전이 사용됩니다.
<supportedRuntime> 요소는 런타임 버전 1.1 이상으로 작성된 모든 애플리케이션에서 사용되어야 합니다. 런타임 버전 1.0만 지원하도록 작성된 애플리케이션은 <requiredRuntime> 요소를 사용해야 합니다.
참고
CorBindToRuntimeByCfg 함수를 사용하여 구성 파일을 지정하는 경우 모든 버전의 런타임에 대해 <requiredRuntime>
요소를 사용해야 합니다. CorBindToRuntimeByCfg를 사용할 때 <supportedRuntime>
요소는 무시됩니다.
.NET Framework 1.1~3.5의 런타임 버전을 지원하는 앱의 경우 여러 버전의 런타임이 지원되면 첫 번째 요소는 우선 순위가 가장 높은 런타임 버전을 지정하고 마지막 요소는 우선 순위가 가장 낮은 버전을 지정해야 합니다. .NET Framework 4.0 이상 버전을 원하는 앱의 경우 version
특성은 .NET Framework 4 이상 버전에 공통적으로 적용되는 CLR 버전을 나타내며, sku
특성은 앱이 대상으로 하는 단일 .NET Framework 버전을 나타냅니다.
sku
특성이 있는 <supportedRuntime> 요소가 구성 파일에 있고 설치된 .NET Framework 버전이 지정된 지원 버전보다 낮은 경우 애플리케이션이 실행되지 않고 대신 지원되는 버전을 설치하라는 메시지가 표시됩니다. 그렇지 않으면 애플리케이션이 설치된 버전에서 실행을 시도하지만 해당 버전과 완전히 호환되지 않는 경우 예기치 않게 작동할 수 있습니다. (.NET Framework 버전 간의 호환성 차이점은 .NET Framework의 애플리케이션 호환성을 참조하세요.) 따라서 더 쉬운 오류 진단을 위해 이 요소를 애플리케이션 구성 파일에 포함하는 것이 좋습니다. (이는 새 프로젝트를 만들 때 Visual Studio에서 자동으로 만들어진 구성 파일에 이미 포함되어 있습니다.)
참고
애플리케이션이 CorBindToRuntimeEx 함수와 같은 레거시 활성화 경로를 사용하고 해당 경로가 이전 버전 대신 CLR 버전 4를 활성화하려는 경우이거나 애플리케이션이 .NET Framework 4로 빌드되었지만 이전 버전의 .NET Framework로 빌드된 혼합 모드 어셈블리에 대한 종속성이 있는 경우 지원되는 런타임 목록에서 .NET Framework 4를 지정하는 것만으로는 충분하지 않습니다. 또한 구성 파일 안의 <startup> 요소에서 useLegacyV2RuntimeActivationPolicy
특성을 true
로 설정해야 합니다. 그러나 이 특성을 true
로 설정하면 .NET Framework의 이전 버전으로 빌드된 모든 구성 요소가 빌드 시 사용된 런타임 대신 .NET Framework 4를 사용하여 실행됩니다.
실행할 수 있는 모든 .NET Framework 버전을 사용하여 애플리케이션을 테스트하는 것이 좋습니다.
"런타임 버전" 값
runtime
특성은 지정된 애플리케이션에 필요한 CLR(공용 언어 런타임) 버전을 지정합니다. 모든 .NET Framework v4.x 버전은 v4.0
CLR을 지정합니다. 다음 표에 version
특성의 런타임 버전 값에 대한 유효한 값이 나와 있습니다.
.NET Framework 버전 | version 특성 |
---|---|
1.0 | "v1.0.3705" |
1.1 | "v1.1.4322" |
2.0 | "v2.0.50727" |
3.0 | "v2.0.50727" |
3.5 | "v2.0.50727" |
4.0-4.8.1 | "v4.0" |
"SKU ID" 값
sku
특성은 TFM(대상 프레임워크 모니커)을 사용하여 앱이 대상으로 지정하고 실행해야 하는 .NET Framework 버전을 나타냅니다. 다음 표에는 .NET Framework 4부터 sku
특성이 지원하는 유효한 값이 나열되어 있습니다.
.NET Framework 버전 | sku 특성 |
---|---|
4.0 | ".NETFramework,Version=v4.0" |
4.0, Client Profile | ".NETFramework,Version=v4.0,Profile=Client" |
4.0, 플랫폼 업데이트 1 | ".NETFramework,Version=v4.0.1" |
4.0, Client Profile, 업데이트 1 | ".NETFramework,Version=v4.0.1,Profile=Client" |
4.0, 플랫폼 업데이트 2 | ".NETFramework,Version=v4.0.2" |
4.0, Client Profile, 업데이트 2 | ".NETFramework,Version=v4.0.2,Profile=Client" |
4.0, 플랫폼 업데이트 3 | ".NETFramework,Version=v4.0.3" |
4.0, Client Profile, 업데이트 3 | ".NETFramework,Version=v4.0.3,Profile=Client" |
4.5. | ".NETFramework,Version=v4.5" |
4.5.1 | ".NETFramework,Version=v4.5.1" |
4.5.2 | ".NETFramework,Version=v4.5.2" |
4.6 | ".NETFramework,Version=v4.6" |
4.6.1 | ".NETFramework,Version=v4.6.1" |
4.6.2 | ".NETFramework,Version=v4.6.2" |
4.7 | ".NETFramework,Version=v4.7" |
4.7.1 | ".NETFramework,Version=v4.7.1" |
4.7.2 | ".NETFramework,Version=v4.7.2" |
4.8 | ".NETFramework,Version=v4.8" |
4.8.1 | ".NETFramework,Version=v4.8.1" |
예제
다음 예제에서는 구성 파일에 지원되는 런타임 버전을 지정하는 방법을 보여줍니다. 이 구성 파일은 앱이 .NET Framework 4.7을 대상으로 함을 나타냅니다.
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7" />
</startup>
</configuration>
구성 파일
이 요소는 애플리케이션 구성 파일에 사용할 수 있습니다.
참고 항목
.NET