감지 말씀이 섹션은 다음 섹션에서는 설치 지침을 제공합니다!
C #을 실행하는 도구를 만들었습니다 ', 당신은 또한 시작 및 실행되고 있지 않을 때, 장착 프레임 워크는 환경, 그리고이 일 경우 감지 할 수 없습니다.
여기에 몇 가지 감지 범위입니다 :
A. 운영 체제 버전을 감지
II. IIS의 버전을 감지
III. 탐지 프레임 워크 버전
IV. RAR 검출 도구 설치
다음은 구체적인 실현 :
운영 체제 버전을 감지 :
우리는 : System.Environment.OSVersion.Version 운영 체제 버전으로 얻을 수 있습니다.
그 후, 우리는 버전 번호에 따라, 지점의 경우 경우 다른 결정한다 나처럼 스위치 :
![](http://static.oschina.net/uploads/img/201406/05233618_QWOa.gif)
![05233618_GeCt.gif](http://static.oschina.net/uploads/img/201406/05233618_GeCt.gif)
(version.Major의 == 5 && version.Minor == 1 ) { 반환 " Microsoft Windows XP를 " ; } 다른 경우 (version.Major의 == 5 && version.Minor의 == 0 ) { 반환 " 마이크로 소프트 윈도우 2000 " ; } 다른 경우 (version.Major는 <= 4 ) { 반환 " 마이크로 소프트 윈도우 NT를 " ;
}
반환 " 알 수없는 " ; }
II. IIS의 버전을 감지
이것은 주로 레지스트리에 의해 판단된다 :
우리는 얻을 : 마이크로 소프트 \ INetStp \ HKEY_LOCAL_MACHINE \ 소프트웨어에서
주 버전 번호와 MajorVersion
MinorVersion 부 버전 번호는 IIS의 버전을 확인하는
![](http://static.oschina.net/uploads/img/201406/05233618_QWOa.gif)
![05233618_GeCt.gif](http://static.oschina.net/uploads/img/201406/05233618_GeCt.gif)
III. 탐지 프레임 워크 버전
그리고 테스트 IIS, 레지스트리에서 감지 :
레지스트리 경로 :
1.1 版本 : 마이크로 소프트 \ NET 프레임 워크 설정 \ NDP \ V1.1.4322 \ HKEY_LOCAL_MACHINE \ 소프트웨어
2.0 版本 : 마이크로 소프트 \ NET 프레임 워크 설정 \ NDP \ V2.0.50727 \ HKEY_LOCAL_MACHINE \ 소프트웨어
3.0 版本 : 마이크로 소프트 \ NDP \ 3.0 \ 설정 \ NET 프레임 워크 설정 \ HKEY_LOCAL_MACHINE \ 소프트웨어
3.5 版本 : HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft로 \ NET 프레임 워크 설정 \ NDP \의 V3.5
노드가 될 수 있습니다 여부를 확인하는 레지스트리만큼! IIS 검출 코드 참조.
IV. 검색 도구 RAR
나는 일반적인 감지 RAR.exe 파일에 의해 검출 된 설치 경로를 결정하기 위해 여기입니다 :
일반적인 경로 : C : \ 프로그램 파일 \ WinRar를 \ WinRAR.exe
여기서 다시, 검출 플레이트 D, E, 경로 :
![](http://static.oschina.net/uploads/img/201406/05233618_QWOa.gif)
![05233618_GeCt.gif](http://static.oschina.net/uploads/img/201406/05233618_GeCt.gif)
( ! System.IO.File.Exists (경로))
{
존재 = 거짓 ; } } } 반환 존재; }
해안되면, 하루에 전화!
HTTPS : //my.oschina.net/secyaher/blog/274270 재현