이 질문은 배포와 관련이 있기 때문에 프로그래밍과 많이 관련이 없습니다.
저는 프로덕션 Windows 서버를 유지 관리하고 여기에 코드를 배포하는 일을 맡고있는 회사 그룹과 많은 대화를 나누고 있습니다. 법률 및 규정 준수를 위해 서버에 대한 직접적인 가시성 또는 제어 권한이 없으므로 서버에 설치된 .NET 버전을 알 수있는 유일한 방법은 해당 그룹에 제공하는 지침을 통해서입니다.
지금까지 어떤 버전이 설치되어 있는지 확인하기 위해 생각할 수있는 모든 방법 (1.1 또는 2.0과 일치하는 관리 도구 확인, “프로그램 추가 / 제거”목록의 항목 확인, c : \ Windows \ Microsoft.NET 아래의 디렉토리)에 결함이 있습니다 (관리 도구 아래에 2.0 항목이없는 적어도 하나의 컴퓨터를 본 적이 있습니다.이 방법은 3.0+, “프로그램 추가 / 제거”목록에 대해 아무것도 알려주지 않습니다. 현실과 동기화되지 않을 수 있으며 디렉토리의 존재가 반드시 아무 의미가 없습니다.)
일반적으로 이러한 것들이 미리 준비되어 있다는 것을 알아야한다는 점을 감안할 때 ( “죄송합니다.이 버전에는 필요한 모든 버전과 서비스 팩이 없습니다”라는 사실을 발견하면 짧은 유지 관리 기간에서는 제대로 작동하지 않습니다.) 직접 서버에 액세스 할 수 없기 때문에 “프록시로”확인을 수행합니다. 프로덕션 Windows Server에 설치된 .NET 버전을 알 수있는 확실한 방법은 무엇입니까? 가급적이면 프레임 워크가 설치하는 것을 사용하여이를 수행하는 몇 가지 본질적인 방법은 더 빠르며 어떤 종류의 유틸리티를로드 할 필요가 없으며 프레임 워크가 제대로 설치되지 않았지만 파일이 제자리에있는 경우 확실히 실패하는 방법이기 때문입니다 (예 : , 디렉토리가 있고 gacutil.exe가 여기에 포함되어 있지만 해당 버전의 프레임 워크는 실제로 “설치”되지 않았습니다.)
편집 : 프레임 워크에 내장 된이 작업을 수행 할 수있는 확실한 기본 방법이없는 경우이를 알아낼 수있는 훌륭하고 가볍고 설치가 필요없는 프로그램을 아는 사람이 있습니까? 누군가가 쉽게 쓸 수 있다고 상상할 수 있지만 이미 존재한다면 더 좋을 것입니다.
답변
이 정보를 찾고있는 서버에서 IE를 열고 다음 사이트로 이동해야합니다. http://www.hanselman.com/smallestdotnet/
그게 전부입니다.
이 사이트에는 브라우저의 “UserAgent”를보고 설치 한 (또는 설치하지 않은) .NET Framework의 버전 (있는 경우)을 파악하고 자동으로 표시하는 스크립트가 있습니다 (선택한 경우 총 크기 계산). .NET Framework 다운로드).
답변
프로그래밍 방식으로 레지스트리 및 이에 따라 몇 가지 다른 사항을 확인할 수 있습니다. 블로그 항목에 .
살펴볼 레지스트리 키는 다음과 같습니다.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\...]
답변
설치된 .NET Framework 버전 확인
명령 프롬프트를 열고 아래 명령 줄 중 하나를 복사하여 붙여 넣습니다.
dir %WINDIR%\Microsoft.Net\Framework\v*
또는
dir %WINDIR%\Microsoft.Net\Framework\v* /O:-N /B
답변
당으로 CodeTrawler의 대답 , 솔루션 탐색기 창에 다음을 입력하는 것입니다 :
% systemroot % \ Microsoft.NET \ Framework
그런 다음 검색 :
Mscorlib.dll
… 그리고 각 결과에 대한 버전 탭을 마우스 오른쪽 버튼으로 클릭하거나 이동합니다.
답변
Microsoft 방식은 다음과 같습니다.
MSDN : 설치된 .NET Framework 버전을 확인하는 방법 (다음 레지스트리 키로 이동 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\...
)
완벽한 보안을 원한다면 그것은 또 다른 일입니다. 프레임 워크 폴더의 xcopy에 대해서는 걱정하지 않습니다. 누군가 그렇게했다면 컴퓨터가 고장난 것으로 간주 할 것입니다.
가장 안전한 방법은 각 버전의 .NET과 관심있는 라이브러리를 사용하는 작은 프로그램을 작성하고 실행하는 것입니다.
무 설치 방법의 경우 PowerBasic 은 훌륭한 도구입니다. 런타임이 필요하지 않은 작은 exe를 생성합니다. 위의 MS KB 문서에 설명 된 검사를 자동화 할 수 있습니다.
답변
http://www.asoft.be/prod_netver.html
이 “좋고 가볍고 설치가 필요없는 프로그램”을 사용하십시오.
답변
확인하려는 시스템에 .NET SDK가 설치되어 있으면 SDK 명령 프롬프트를 사용하여 프로그램을 실행할 수 있습니다 CLRVer.exe
.