公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C# 判斷.Net Framework 的版本是否滿足軟件運行需要的版本

admin
2021年4月20日 9:24 本文熱度 5001
不直接運行軟件,而是運行一個引導程序,在引導程序里面判斷.Net Framework 的版本,滿足條件就啟動軟件,不滿足就提示用戶安裝.Net Framework。
注意需要引入:using Microsoft.Win32;

下面是如果確定用戶的電腦是4.0及以上,才可以使用的新方法,否則只能使用老的方法,一樣可以解決,各版本需要的 release 可以在微軟官方文檔中查到:
        /// <summary>
        /// 判斷.Net Framework的Release是否符合需要
        /// (.Net Framework 版本在4.0及以上)
        /// </summary>
        /// <param name="release">需要的版本 version = 4.5 release = 379893</param>
        /// <returns></returns>
        private static bool GetDotNetRelease(int release)
        {
            //判斷操作系統版本(64位\32位)打開注冊表項,判斷.net版本
            RegistryKey localKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, Environment.Is64BitOperatingSystem ? RegistryView.Registry64 : RegistryView.Registry32);
            const string subkey = @"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\";
            using (RegistryKey ndpKey = localKey.OpenSubKey(subkey, true))
            {
                if (ndpKey != null && ndpKey.GetValue("Release") != null)
                {
                    return (int)ndpKey.GetValue("Release") >= release ? true : false;
                }
                return false;
            }
        }

老的方法,支持2.0及以上:

        /// <summary>
        /// 判斷.Net Framework的Version是否符合需要
        /// (.Net Framework 版本在2.0及以上)
        /// </summary>
        /// <param name="version">需要的版本 version = 4.5</param>
        /// <returns></returns>
        private static bool GetDotNetVersion(string version)
        {
            string oldname = "0";
            using (RegistryKey ndpKey =
                RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, "").
                OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\"))
            {
                foreach (string versionKeyName in ndpKey.GetSubKeyNames())
                {
                    if (versionKeyName.StartsWith("v"))
                    {
                        RegistryKey versionKey = ndpKey.OpenSubKey(versionKeyName);
                        string newname = (string)versionKey.GetValue("Version", "");
                        if (string.Compare(newname, oldname) > 0)
                        {
                            oldname = newname;
                        }
                        if (newname != "")
                        {
                            continue;
                        }
                        foreach (string subKeyName in versionKey.GetSubKeyNames())
                        {
                            RegistryKey subKey = versionKey.OpenSubKey(subKeyName);
                            newname = (string)subKey.GetValue("Version", "");
                            if (string.Compare(newname, oldname) > 0)
                            {
                                oldname = newname;
                            }
                        }
                    }
                }
            }
            return string.Compare(oldname, version) > 0 ? true : false;
        }

最后將判斷的代碼放在Main方法里:
        static void Main(string[] args)
        {
            if (!GetDotNetVersion("4.5"))
            {
                if (MessageBox.Show("當前缺少運行環境,是否進行安裝!\r\n\r\n安裝完成后將自動啟動軟件", "提示", MessageBoxButtons.YesNo) == DialogResult.No)
                    return;
                Process.Start(@"_framework4.5.2.exe").WaitForExit(); //一直等待,直到Framework安裝完成
                if (GetDotNetVersion("4.5"))
                    Process.Start(@"你的程序.exe");
            }
            else
                Process.Start(@"你的程序.exe");
        }

該文章在 2021/4/20 9:29:42 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产福利一区二区三区在线视 | 高清无码国产片 | 国产91久久九九免费精品无码 | 国产中文在线二区三区免 | 国产粗话肉麻对白在线播放 | 国产精品一区二区在线观看 | 国产一区二区精品人妖系列 | 国产午夜小视频在线 | 成人做受120秒试看试看视频 | 国产成人无码www免费视频在线 | 国产萝裸体视频福利 | 国产福利在线视频大二 | 91久久精品无码一区二区 | 国产欧美日韩综合视频专区 | 成人国产精品毛片av一区 | 国产免费无码不卡网站 | 精品一区二区三区免费视频 | 国产精品无码一区二区三区免费 | 国产成a人片在线观看视频99 | 国产日韩欧美精品另类 | 精品无人乱码一区二 | 国产裸拍裸体视频 | 精品国产91av | 丰满熟女人妻中文字幕免费 | 国产亚洲国产麻豆 | 国产一区二区精品网站麻豆 | 国产极品喷水视频 | 国产三级电影网站 | 精品国无码产在线 | 国产一区二区三区四区在线无码 | 国产成本人片无码免费2025 | 18禁h免费动漫无码网站 | 国产91精品久久 | 国产亚洲综合视频 | 国产毛片一区二区三区精品 | av免费在线观看的网址 | 精品九九99久久人妻免费 | 国产自在现线最新 | 国产无套视频在线观看aa在线 | 国产精品熟女人妻一区二区三区 | 国产av无码专区亚洲av蜜芽 |