天天看點

網站安裝打包 軟體環境檢測與安裝[二] 上

這一節主要講檢測,下一節講安裝!

一個C#制作完的工具一運作,一個可以不用檢測與安裝的就是framework環境了,要是沒這東西,也運作不起來。

這裡提供幾個檢測的範圍:

一.檢測作業系統版本

二.檢測IIS版本

三.檢測framework版本

四.檢測RAR工具是否安裝

以下為具體實作:

一.檢測作業系統版本:

我們通過:System.Environment.OSVersion.Version 可以擷取到作業系統的版本。

之後,我們要根據版本号,進行if else if或switch之類的分支判斷即可:

網站安裝打包 軟體環境檢測與安裝[二] 上
網站安裝打包 軟體環境檢測與安裝[二] 上

 public static string GetOSystemName()

        {

           return GetOSystemNameByVersion(System.Environment.OSVersion.Version) + "\r\n" + System.Environment.OSVersion.ServicePack;

        }

        private static string GetOSystemNameByVersion(Version version)

            if (version.Major == 5 && version.Minor == 2)

            {

                return "Microsoft Windows Server 2003";

            }

            else if (version.Major == 5 && version.Minor == 1)

                return "Microsoft Windows XP ";

            else if (version.Major == 5 && version.Minor == 0)

                return "Microsoft Windows 2000 ";

            else if (version.Major <= 4)

                return "Microsoft Windows NT ";

            return "未知";

網站安裝打包 軟體環境檢測與安裝[二] 上

這裡主要是通過系統資料庫進行判斷:

我們通過擷取:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\INetStp下的

主版本号MajorVersion 和

次版本号MinorVersion 來判斷IIS的版本

網站安裝打包 軟體環境檢測與安裝[二] 上
網站安裝打包 軟體環境檢測與安裝[二] 上

public static string GetIISVerstion()

            RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\INetStp");

            if (key == null) { return ""; }

            return Convert.ToString(key.GetValue("MajorVersion")) + "." + Convert.ToString(key.GetValue("MinorVersion"));

網站安裝打包 軟體環境檢測與安裝[二] 上

和檢測IIS一樣,可以通過系統資料庫檢測:

系統資料庫路徑:

1.1版本:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322

2.0版本:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727

3.0版本:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup

3.5版本:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5

隻要判斷系統資料庫節點是否存在即可!代碼參考IIS檢測。

四.檢測RAR工具

這裡我是通過檢測RAR.exe檔案的常見安裝路徑來判斷檢測:

常見路徑:C:\Program Files\WinRAR\WinRAR.exe

這裡同樣檢測D盤,E盤路徑:

網站安裝打包 軟體環境檢測與安裝[二] 上
網站安裝打包 軟體環境檢測與安裝[二] 上

public static bool IsFileExistsByCDE(string path)

            bool exists=true;

            if (!System.IO.File.Exists(path))

                path = path.Replace("C:", "D:");

                if (!System.IO.File.Exists(path))

                {

                    path = path.Replace("D:", "E:");

                    if (!System.IO.File.Exists(path))

                    {

                        exists = false;

                    }

                }

            return exists;

網站安裝打包 軟體環境檢測與安裝[二] 上

打完,收工!

版權聲明:本文原創發表于部落格園,作者為路過秋天,原文連結:

http://www.cnblogs.com/cyq1162/archive/2010/01/19/1651366.html