나는 상당한 연구를했으며 적절한 대답을 찾지 못했습니다. 다음은 시나리오입니다..NET Framework 4.6.1에서 실행되도록 .NET Framework 4를 대상으로 컴파일 된 응용 프로그램을 강제로 설치하는 방법은 무엇입니까?
.NET Framework 4를 대상으로 컴파일 된 응용 프로그램이 있습니다. 런타임에 .NET Framework 4.6.1 내에서 실제로 응용 프로그램을 실행하고 싶습니다. 지금까지 두 가지 옵션을 발견했습니다.
- 재 컴파일 = "4.0"SKU = ". NETFramework, 버전 = v4.6.1 버전의 app.config 할 수있는 구성/시작/supportedRuntime 요소를 추가합니다 .NET 프레임 워크 4.6.1
- 에서 응용 프로그램
옵션 1은 소프트웨어를 다시 릴리스해야하므로 바람직하지 않습니다.
옵션 2는 예상 한대로 작동하지 않습니다. CLR 4.0 (프레임 워크 4.0이 아님)이 설치되어 있는지 확인한 후 설치하지 않고 적절한 SKU를 다운로드하라는 메시지가 표시되면 확인합니다. 설치 후, 응용 프로그램이 여전히 테스트로 .NET 프레임 워크 4.0
에서 실행하고, 그 컴파일 할 경우이 질문에 게시 된 이유는 단순히이
Console.WriteLine(System.Net.ServicePointManager.SecurityProtocol);
을하는 작은 콘솔 응용 프로그램을 만들어 .NET 프레임 워크 4는 다음 출력이 SSL3, TLS를
입니다에 대해 그 .NET Framewo에 대해 컴파일하는 경우 RK 4.6.1 다음 출력은 Tls12
TLS를 Tls11입니다
http://stackoverflow.com/a/28502562/17034 –
감사합니다. 한스. 이것은 내 샘플의 문제를 해결하고 우리가 사용하려고하는 것입니다. 나는 또한 더 큰 질문에 대한 대답에도 관심이있다. 가능하다면 우연히 알고 있습니까? 그렇다면 어떻게 될까요? –
Hmya, SecurityProtocolType .NET 4.0 버전에는 원하는 enum 값이 없습니다. 앱이 속성 값을 올바르게 해석 할 수있는 방법은 매우 어렵습니다. 그러나 그것이 작동한다면 그것은 작동합니다. –