亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        winform實(shí)現(xiàn)自動(dòng)更新并動(dòng)態(tài)調(diào)用form實(shí)現(xiàn)

        字號(hào):

        winform 應(yīng)用系統(tǒng)的部署問題,一直是個(gè)令人苦惱的問題。在2.0下,我們可以通過clickonce方式部署,但是這里要說的,是利用文件的操作來對(duì)系統(tǒng)進(jìn)行更新。
            為了方便用戶作業(yè),把實(shí)際的系統(tǒng)打包成DLL存在,而設(shè)計(jì)一個(gè)自動(dòng)更新的form來作為用戶啟動(dòng)的入口。用戶啟動(dòng)后,實(shí)現(xiàn)自動(dòng)檢測(cè)服務(wù)端和客戶端系統(tǒng)文件版本,并把所有所需文件更新至最新版本。而后自動(dòng)啟動(dòng)系統(tǒng)入口界面。
            using System;
            using System.Collections.Generic;
            using System.ComponentModel;
            using System.Data;
            using System.Drawing;
            using System.Text;
            using System.Windows.Forms;
            using System.Reflection;
            using System.Threading;
            using System.Net;
            using System.IO;
            namespace autoUpdateAndCallFormDll
            {
            ///
            /// 1.啟動(dòng)時(shí),實(shí)現(xiàn)自動(dòng)更新
            /// 2.可把不同模塊打包DLL,在運(yùn)行時(shí),利用反射機(jī)制調(diào)用DLL 中form(類)。
            ///
            /// 為了準(zhǔn)確顯示更新畫面,并在更新完畢后調(diào)用Dll,采用異步方式。
            ///
            public partial class Form1 : Form
            {
            public Form1()
            {
            InitializeComponent();
            backgroundWorker1.RunWorkerAsync(); //異步更新作業(yè)
            }
            private void callMainForm()
            {
            //Dynamic Call Form using Assembly
            Assembly assembly = Assembly.LoadFrom(@"D:\TEST\SD.dll");
            Form frm = assembly.CreateInstance("SD.frmmain") as Form;
            frm.Show();
            frm.Activate();
            this.Visible = false;
            }