在UtiMnid組件下,利用auAutoUpgrader實(shí)現(xiàn)自動(dòng)升級(已經(jīng)測試通過) 第一步:下載AutoUpgrader.Pro.v4.6.4。 第二步:打開AutoUpgrader.Pro.v4.6.4下面的Delphi7目錄,雙擊AutoUpgraderProD7.package文件安裝,點(diǎn)install,安裝。完成后,在工具面板上增加了一個(gè)UtiMnid組件。然后將Delphi7目錄下面的全部文件都復(fù)制到delphi7的安裝目錄下面的bin目錄中。 第一次發(fā)布程序時(shí)要做的事。 1、在已開發(fā)完成的程序中,在第一個(gè)啟動(dòng)的窗體上,放一個(gè)TauAutoUpgrader控件。 2.雙擊auAutoUpgrader1,在彈出的對話框中做以下設(shè)置: (1)選擇ByNumer,按版本號檢查更新,在Numer文本框中填好程序版本號。注意,程序版本號的格式一定要是如:1.0.0.1這種格式,否則會(huì)出錯(cuò)。 (2)單擊add按鈕,添加本次升級文件的http下載地址,格式如:http://192.168.1.104:8080/update/project1.exe,千萬別寫錯(cuò)了。AutoUpgrader只支持http方式。不要填錯(cuò)。Upgrade method默認(rèn);可以在“Release Notes Message”里面寫上本次的更新內(nèi)容; (3)單擊“Export to info-file”按鈕,輸入文件名,生成一個(gè)后綴為.inf的配置文件,然后將這個(gè)配置文件上傳到你的網(wǎng)站,和升級文件放在同一個(gè)目錄,如http://192.168.1.104:8080/update。 (4)在auAutoUpgrader1控件的InfoFileURL屬性里,輸入你的網(wǎng)站里的那個(gè)inf文件,假如文件名為aa.inf,那么屬性里的值就應(yīng)該是http://192.168.1.104:8080/update/aa.inf,這兒也千萬別搞錯(cuò)了。因?yàn)槌绦蛏壥强窟@個(gè)文件來斷定是否升級。 (5)把a(bǔ)uAutoUpgrader1的autocheck設(shè)為true。 (6)自動(dòng)檢查并提示升級:方法是:在第一個(gè)啟動(dòng)窗體上,添加以下代碼: procedure TForm1.FormCreate(Sender: TObject); begin auAutoUpgrader1.CheckUpdate(true);//實(shí)際上就只加這一句。 end; (7)手動(dòng)升級:方法是,窗體上放一個(gè)按鈕button,屬性為“檢查更新”,在按鈕的onclick事件里面寫上auAutoUpgrader1.CheckUpdate(False); (8):在網(wǎng)站上建目錄和端口設(shè)置。 必須和程序開發(fā)中設(shè)置的目錄一致,否則升級時(shí)找不到文件。如開發(fā)中的目錄是http://192.168.1.104:8080/update,那么網(wǎng)站上就必須設(shè)置update目錄。還有一點(diǎn),網(wǎng)站的端口也必須是8080。 (9):將升級文件和配置文件放在網(wǎng)站上已設(shè)置好的目錄中,例如:update目錄。如果文件很多,分不清哪些是升級的,哪些不是的,就全部放進(jìn)去吧。呵呵。。反正現(xiàn)在硬盤夠大了。如果你能分清楚就更好。 修改客戶端后,怎么升級處理? 如果你的客戶端因業(yè)務(wù)需要而需要進(jìn)行修改,那么應(yīng)在修改完成后,進(jìn)行下面的修改和處理,才能實(shí)現(xiàn)自動(dòng)升級。 1、對auAutoUpgrader1的修改。雙擊打開,修改ByNumer的版本號。注意必須比上一次的號高。如上一次是1.0.0.1,那么這一次就應(yīng)該是1.0.0.2。 2、單擊“Export to info-file”按鈕,輸入與開發(fā)時(shí)相同的文件名,生成一個(gè)后綴為.inf的配置文件,然后將這個(gè)配置文件上傳到你的網(wǎng)站,和升級文件放在同一個(gè)目錄,如 3、點(diǎn)OK按鈕,然后全部保存Delphi文件,然后編譯運(yùn)行。 4、將新生成的配置文件和全部編譯后的Delphi文件復(fù)制到網(wǎng)站上指定的目錄中,例如http://192.168.1.104:8080/update。覆蓋以前的文件。注意:這時(shí)不用打包。因?yàn)檫@兒需要的不是打包的程序文件,而是打包之前的散件(未打包的文件)。 5、OK。 6、以后的升級都如法炮制了。 |
|