線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:675
推到 Plurk!
推到 Facebook!

請問一個程式自動昇級的問題!!!

尚未結案
sincereli
一般會員


發表:6
回覆:7
積分:2
註冊:2003-10-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-08 23:35:14 IP:220.184.xxx.xxx 未訂閱
我編寫暸一個主程式和一個昇級程式,昇級程式是根據服務器上和本地所用的dll的脩改時間來判斷是否需要昇級。但是現在的問題是我的主程式一起動就會載入這些dll,這樣昇級程式就不能用新的dll覆蓋當前的dll暸。本來想通過脩改dll名字和后綴名來做的,但是因為這些dll是程式一起動就被載入(程式主界麵顯示的需要),所以還是有問題。請問大傢有什么好的解決方法?或者設計自動昇級程式有什么其他比較好的方式么,能否以代碼示之?謝謝各位暸!!
HomeSound
中階會員


發表:44
回覆:178
積分:94
註冊:2002-08-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-12-09 07:53:13 IP:61.30.xxx.xxx 未訂閱
sincereli您好: (爛方法)可以用編寫一檔案Wininit.ini內容如下: [rename] C:\WINDOWS\SYSTEM\abc.dll=C:\WINDOWS\SYSTEM\_def.dll C:\WINDOWS\SYSTEM\123.drv=C:\WINDOWS\SYSTEM\_123.001 存檔後置於 windows目錄,下次開機就會自動更新了 _def.dll是更新檔,abc.dll是舊檔 Wininit.ini在Dos環境時就更新了不會有占住檔案的情況 另一種是,寫個檢查程式,更新完再呼叫執行主程式亦可. 如果場合不適用,勿怪. --==多看.多學.多聽==--
------
--==多看.多學.多聽==--
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-12-09 10:31:14 IP:203.73.xxx.xxx 未訂閱
引言: 我編寫暸一個主程式和一個昇級程式,昇級程式是根據服務器上和本地所用的dll的脩改時間來判斷是否需要昇級。但是現在的問題是我的主程式一起動就會載入這些dll,這樣昇級程式就不能用新的dll覆蓋當前的dll暸。本來想通過脩改dll名字和后綴名來做的,但是因為這些dll是程式一起動就被載入(程式主界麵顯示的需要),所以還是有問題。請問大傢有什么好的解決方法?或者設計自動昇級程式有什么其他比較好的方式么,能否以代碼示之?謝謝各位暸!!
sincereli 你好:
(1)系統架構的改變: 如果你的 DLL 一直在被鎖定的狀態,自然是無法被動態更
   新的,因此,如果可以的話,是否嘗試把你的 DLL 改成動態連結的方式,只
   有在被使用到的時候才被載入,這樣就可以做到動態更新
(2)不同的兩個程序: 昇級的程式最好寫成另外一個 EXE,當使用者啟動此昇級
   程式的時候,會先檢查原來的主程式是否正在執行,如果正在執行的話,先
   關掉原來的主程式,然後進行更新的動作,待更新完成以後,再重新啟動原
   來的主程式
(3)所有的關鍵字,建議你自己善用本站的搜尋功能
   (a)Static Link Library/Dynamic Link Library
   (b)FindWindow/SendMessage
   (c)ShellExecute
   (d)...還有其他的,看情況而定
-- Enjoy Researching & Developing --
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
系統時間:2024-05-18 19:17:33
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!