サイト環境試験とのパッケージソフトウェアインストール[2]をインストール

検出話すこのセクションでは、次のセクションでは、インストール手順を提供しています!

C#は実行するツールを作成しました '、あなたもない稼働して、マウントフレームワークは、環境ではなく、この事かどうかを検出することはできません。

ここではいくつかの検出範囲は以下のとおりです。

A.オペレーティングシステムのバージョンを検出

II。IISのバージョンを検出

III。検出フレームワークバージョン

IV。RAR検出ツールがインストールされています

以下では、具体的な実現です。

 


Aオペレーティングシステムのバージョンを検出:

 

私たちは:System.Environment.OSVersion.Versionは、オペレーティングシステムのバージョンに入ることができます。

その後、我々は他の場合はどうかを判断またはのように切り替えるには、バージョン番号、枝に応じて必要があります。

 

05233618_GeCt.gif コード
  パブリック 静的文字列 GetOSystemName()        { 戻り GetOSystemNameByVersion(System.Environment.OSVersion.Version)  +を" \ R \ n " +  System.Environment.OSVersion.ServicePack。        } プライベート静的な文字列 GetOSystemNameByVersion(バージョンバージョン)        { 場合 (version.Major  == 5 &&  version.Minor  == 2             { リターン" のMicrosoft Windows Server 2003の" ;             } それ以外の場合    

           
   

        
   

            
     

                
 

            
   (version.Majorの  == 5 &&  version.Minor  == 1             { リターン" Microsoft Windows XPを  "             } それ以外の場合 (version.Major  == 5 &&  version.Minorの  == 0             { リターン" のMicrosoft Windows 2000  "             } それ以外の場合 (version.Major  <= 4             { リターン" のMicrosoft Windows NT  "      

                
 

            
       

                
 

            
   

                
 
            }
            
戻り 、 " 不明" ;         }  

 

 


II。IISのバージョンを検出

 

これは主に、レジストリによって判断されます。

当社は、取得します。HKEY_LOCAL_MACHINE \ SOFTWAREの下に\のマイクロソフト\ INETSTPを

メジャーバージョン番号とのMajorVersion

IISのバージョンを確認するためにMinorVersionのマイナーバージョン番号

 

05233618_GeCt.gif コード
公共の 静的な文字列 GetIISVerstion()        {             のRegistryKeyキー  =  Registry.LocalMachine.OpenSubKey(@ " SOFTWARE \マイクロソフト\ INETSTP " ); もし (キー  == NULL ){  リターン"" } を返す (key.GetValue(Convert.ToString " のMajorVersionを" ))  + " " +  (key.GetValue(Convert.ToString " MinorVersionのを" ));         }    


            
   
            
   

 

 


III。検出フレームワークバージョン

 

レジストリによって検出されるようにと、IISをテストします:

レジストリパス:

1.1版本:HKEY_LOCAL_MACHINE \ SOFTWAREの\マイクロソフト\ NET Frameworkのセットアップ\ NDP \ V1.1.4322

2.0版本:HKEY_LOCAL_MACHINE \ SOFTWAREの\マイクロソフト\ NET Frameworkのセットアップ\ NDP \ v2.0.50727の

3.0版本:マイクロソフト\ NET Frameworkのセットアップ\ NDP \ V3.0の\セットアップのHKEY_LOCAL_MACHINE \ SOFTWARE \

3.5版本:ます。HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ NET Frameworkのセットアップ\ NDP \ V3.5の

限りノードがあるかどうかを判断するために、レジストリを得るように!IIS検出コード参照。

 


IV。検出ツールRAR

 

私は、共通の検出RAR.exeファイルで検出されたインストールパスを決定するためにここにいます:

共通のパス:C:\プログラムファイル\ WinRARの\ WinRAR.exe

ここでも、検出板D、E、パス:

 

05233618_GeCt.gif コード
パブリック 静的ブール IsFileExistsByCDE(文字列 パス)        { BOOLが 存在= もし (System.IO.File.Exists(パス))            {                 パス  =  path.Replace(" C:" 、  " D:" )。もし (System.IO.File.Exists(パス))                {                     パス  =  path.Replace(" D:" 、  " E:" )。もし    

            

            



                



                    
 ( System.IO.File.Exists(パス))
                    {
                        存在 
=                     }                 }             } リターンが 存在します。        }  



            

 

海岸に一度、一日それを呼び出します!

ます。https://my.oschina.net/secyaher/blog/274270で再現

おすすめ

転載: blog.csdn.net/weixin_33798152/article/details/91966711