.NET 2.0 만 설치된 시스템에서 .NET 3.5 용으로 구축 된 소프트웨어 실행

StackOverflow https://stackoverflow.com/questions/1520510

  •  19-09-2019
  •  | 
  •  

문제

.NET 2.0 만 설치 한 시스템에서 충돌하기 전에 .NET 3.5를 위해 소프트웨어가 얼마나 멀리 컴파일 되는가?

개발중인 응용 프로그램은 WPF를 사용하고 .NET 3.5가 필요하지만 사용자가 설치하지 않은 경우 사용자 친화적 인 대화 상자를 표시하고 싶습니다.

이를 수행하는 표준 방법 또는 공식 Microsoft 문서가 있습니까?


편집하다: 이상적인 세상에서는 설치 중에 .NET 종속성이 만족되는지 확인합니다. 일부 응용 프로그램에는 설치자가없고 응용 프로그램이 설치된 후 사용자가 .NET을 제거 할 수 있으므로 아래의 답변이 유용하다고 생각합니다.

도움이 되었습니까?

해결책

3.5가 필요한 DLL을 사용하려고 할 때까지 (아마도) 충돌하지 않을 것입니다. 3.5 특정 DLL을 사용하기 전에 실행 앱이 버전을 확인할 수있는 경우 WinForm 대화 상자를 표시 할 수 있으며 괜찮습니다. 가장 안전한 베팅은 EXE를 2.0 어셈블리로 만들고 3.5에 대해 3.5에 대해 컴파일되는 별도의 DLL로 3.5를 모두 만드는 것입니다. 3.5 어셈블리를로드하기 전에 2.0 DLL에서 수표를 수행 할 수 있습니다.

다른 팁

.NET 3.5는 .NET 2.0 런타임을 사용하므로 앱이 완벽하게 시작됩니다 (그러나 ~ 할 것이다 3.5 어셈블리를로드하려고하면 실패). 당신은 확인할 수 있습니다 환경 .NET 3.5인지 확인하려면 실행 중이며 표준으로 사용자에게 제공합니다. MessageBox.Show 그렇지 않다면.

ClickOnce 배포 사용을 고려해 보셨습니까? 에이전트는 .NET을 포함하여 지정한 전제 조건 항목을 확인하고 설치합니다. 또한 응용 프로그램의 업그레이드를 상당히 고통스럽게 만듭니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top