版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、為什么有些軟件安裝完后需要重啟電腦 六 簡單地說,大多數(shù)軟件裝完后,都需要修改注冊表使其在電腦中占有“一席之地”,有些軟件需要重啟是因為它進(jìn)入了注冊表核心,但開機后的注冊表核心已經(jīng)像一面盾把該軟件擋在了門外,該軟件要進(jìn)入,必須重啟電腦,趕在那面盾建立起來之前融入注冊表。專業(yè)點來講是這樣的:軟件安裝完成之后,與Explorer有關(guān)的設(shè)置須等待Explorer重啟后才能生效;而Autoexec.bat中設(shè)置環(huán)境變量也只能在重新啟動計算機時裝入;系統(tǒng)DLL只能通過WinInit.exe在進(jìn)入Windows前的DOS環(huán)境下替換,靜態(tài)VxD只能在裝入 Windows的時候載入。因此,許多軟件在安裝完成之
2、后必須重啟計算機才能使軟件運行環(huán)境生效?,F(xiàn)在網(wǎng)吧一般裝有“還原精靈”,遇到裝軟件需要重啟怎么辦呢?很簡單,Ctrl+Alt+Del打開任務(wù)管理器,在進(jìn)程里面找到“explorer.exe”,右擊結(jié)束進(jìn)程文件新建任務(wù)(運行)輸入explorer.exe確定,就可以了。=詳細(xì)說明=軟件在安裝時,到底做了些什么?大家每天都在用電腦,可能也經(jīng)常在自己的電腦上安裝軟件。就算自己沒安裝過,至少也看到人家安裝過軟件。在這里,我不是想教你怎么安裝軟件,而是想向你展示,軟件在安裝的過程中,到底都做了些什么動作?為什么有些軟件要安裝,直接拷貝過去卻不能用?為什么一些軟件安裝或卸載之后要重啟。下面要討論的就是這些問
3、題。首先,我們探討一下軟件安裝的共通部分,說共通,就是在不同版本的操作系統(tǒng)上,如WINDOWS98,WIN2K和WINXP等上它們都有共同點的地方。這個文章也試圖不針對具體的某個操作系統(tǒng),而對共同的規(guī)律來探討,不過我自己用的是WINDOWS98,所以有時一些例子可能會用WINDOWS98上的實例來說明,而大多數(shù)情況下這些特*在WIN2K和WINXP上也是類似的。那么,我先來歸納一下,典型的軟件安裝過程都有可能做哪些事情。由于我們是討論軟件在安裝時的行為,所以開始安裝前的設(shè)置和選項我們就暫不討論,只說到軟件真正開始安裝那個時候起的動作:文件從安裝源位置拷貝到目標(biāo)位置。往系統(tǒng)目錄寫入一些必要的動態(tài)
4、連接庫(DLL)。(可選)往系統(tǒng)注冊表中寫入相應(yīng)的設(shè)置項。(可選)建立開始菜單里的程序組和桌面快捷方式。(可選)其他動作。(可選)下面我們再詳細(xì)來分析上面歸納出來的這些動作:1)拷貝軟件本身需要的文件。源位置指軟件未安裝之前的位置,例如光盤,下載的目錄等,目標(biāo)位置指你指定的安裝位置。這是幾乎所有的軟件安裝過程一定會做的一件事。而如果一個軟件,在安裝時只要這一步,不需要后面的其他幾步 ,我們可以認(rèn)為這個軟件就是綠色軟件?;蛘叻催^來說綠色軟件就是只要拷貝文件,不需要依賴于某個DLL,或者它依賴的DLL在幾乎所有的系統(tǒng)中都一定有的,并且它也不依賴于注冊表里面的設(shè)置項的軟件。2) 這一步,可以說至少有
5、一半軟件在安裝時都會做,一些軟件,需要用到某個DLL,特別是那些軟件作者開發(fā)的DLL,或者系統(tǒng)中不常用的DLL,一般都會隨軟件的安裝拷到系統(tǒng)目錄。所謂系統(tǒng)目錄,在WIN98下一般是在WINDOWSSYSTEM這個目錄,而WIN2K是在WINNT SYSTEM32,WINXP是在WINDOWSSYSTEM32。還有,一些軟件如QQ游戲,中游等,它們也用到一些DLL,由于這些DLL只是這個軟件自己用到,別的其他軟件不會用到,所以它們并不一定存在于系統(tǒng)目錄,而是放在軟件安裝目錄里面,這樣的DLL已經(jīng)在上一步中被拷貝,所以和這一步說的情況不一樣。3)這一步同樣至少有一半軟件會做,一般在安裝前用戶的設(shè)置
6、和一些選項,在安裝時就會把這些設(shè)置寫到注冊表里。另外就是有時在上一步把DLL拷貝到系統(tǒng)目錄時,一些DLL需要向系統(tǒng)注冊,這些DLL的注冊信息也會寫在注冊表里。還有,一些軟件有時可能安裝時并不寫注冊表,而是在第一次運行時才把一些設(shè)置寫到注冊表。4)這個非常簡單,大概不需要怎么解釋。建立這些快捷方式一方面是便于用戶執(zhí)行,另外在時也會把卸載的快捷方式放在程序組里。關(guān)于卸載后面我們再來討論。5)這個就是除了上面說的以外的其他情況。例如有些軟件安裝時會先把所有文件(或一部分文件)先解壓到臨時目錄,那么安裝完之后就要把這些文件刪除掉。那么我們再總結(jié)一下:一、一個典型的軟件在安裝過程一般都會執(zhí)行上面的1-4
7、項。這樣可以認(rèn)為是一個完整的安裝過程。二、除了第1項之外,其他的都不是必要的。只需要第一項的軟件,我們可以把它叫做綠色軟件。三、有些軟件安裝時是執(zhí)行了1、2、4,有些軟件是執(zhí)行了1、3、4,有些軟件是執(zhí)行了1、4。四、一個特殊的情況,一般的驅(qū)動程序,只會執(zhí)行2和3,沒有1和4。五、理論上,任何軟件,如果你非常確切地知道了它在上面的那幾步都具體做了些什么,特別是2和3,那么,理論上你可以把這個軟件的安裝文件拷貝到另一臺機子,把必要的DLL從系統(tǒng)目錄拷貝到那一臺機子的系統(tǒng)目錄,再把注冊表里軟件寫入的項目導(dǎo)出來(必要時還要修改一下)再導(dǎo)入到那臺機子的注冊表中,那么,就算不是綠色軟件,你也能這樣把它移
8、植給另一臺機。但有時特別是一些共享軟件,一般都會有注冊表中設(shè)置比較隱蔽的項目,不容易查找,所以除非你對系統(tǒng)非常熟悉,否則不是綠 色軟件的軟件要移植還是有一定的難度的。那么,下面我們再來看看,為什么一些軟件安裝后要重啟。在 WINDOWS操作系統(tǒng)上,一般一個正在運行中的程序,操作系統(tǒng)是不讓你修改它的,修改包括替換,改動和刪除。那么有時,一些軟件需要向系統(tǒng)目錄中寫入一個DLL,而系統(tǒng)目錄中原來已經(jīng)有同名的DLL并且這個DLL目前正在被系統(tǒng)使用,因此不能用新版本去替換它,這個時候就需要重啟,在重啟的過程中,在這個DLL舊的版本被使用之前用新版本替換它。這就是為什么要重啟的原因。你能看到這里,說明你很
9、有耐心,并且對技術(shù)的探討很有興趣,那么我就再說得更詳細(xì)些。在WIN98中,上面說的這個替換是由系統(tǒng)的一個工具來實現(xiàn)的,這個工具叫WININIT.EXE。安裝程序在檢測到需要寫入的DLL 或其他程序文件正在使用時,會把要寫入的DLL文件先定一個臨時的文件名,然后在WINDOWS目錄中往WININIT.INI寫入一個改寫項,比如,一個叫ABCD.DLL的動態(tài)連接庫現(xiàn)在正在使用中,而安裝程序要往系統(tǒng)中寫入新版本的ABCD.DLL,這時安裝程序會把新版本ABCD.DLL先定一個臨時文件名,例如AAAA.LLL,然后在WININIT.INI中的rename一節(jié)中寫入這一項: C:windowssyste
10、mabcd.dll=C:windowssystemaaaa.lll ) 這樣,在重啟時,進(jìn)入WINDOWS圖形界面之前,WININIT.EXE在檢測到WINDOWS目錄中有WININIT.INI存在時,就執(zhí)行里面的操作,在上面的例子中,是用C:windowssystemaaaa.lll去替換掉C:windowssystemabcd.dll這個文件,并且把WININIT.INI改名為WININIT.BAK。另外,有些軟件,在安裝時,是把所有文件包括SETUP.EXE解壓到臨時文件里面再執(zhí)行SETUP.EXE進(jìn)行安裝的,按理來說安裝完要把所有的臨時文件刪除掉,這個操作當(dāng)然也是由安裝程序SETUP.
11、EXE來完成,但它自己正在運行,也刪不了它自己,所以也要重啟來刪除,做法和上面差不多,只是改成類似這樣子的: 怦S?vH燁?NUL=C:WINDOWSTEMPSETUP.EXE在WIN2K和WINXP中,存在類似的機制,不過并不是用WININIT.EXE和WININIT.INI來實現(xiàn),具體的做法我也不是很清楚,長期以來我大多數(shù)時候都是在用WIN98,所以沒認(rèn)真研究過,但軟件安裝過程要重啟的現(xiàn)象在2K和XP上是仍然存在的,原理也是在重啟時替換或修改正在使用的文件,只是實現(xiàn)的方式不同。最后,我們再來看看有關(guān)卸載方面的內(nèi)容。一般卸載有好幾種方式:1)早期的安裝程序,一般會在安裝過程記錄了上面說的安裝過程的1234四個步驟中具體拷貝的文件和DLL以及注冊表項,把它保存在INSTALL.LOG之類的文件中,再在軟件的安裝目錄(或WINDOWS目錄中)放一個UNINST.EXE之類的卸載程序。然后要么在程序組里為這個UNINST.EXE建一個 快捷方式,要么在注冊表中為這個UNINST.EXE建一個快捷方式(這誑刂潑姘宓奶砑由境絳蚓湍蕓吹餃砑男對叵?,并把INSTALL.LOG做為它的參數(shù),這樣就實現(xiàn)卸載了。2)現(xiàn)在比較多的安裝程序是用新版的INSTA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年個人房屋租賃的合同(2篇)
- 2025年個人房屋買賣協(xié)議參考模板(2篇)
- 2025年二手房轉(zhuǎn)讓房產(chǎn)協(xié)議范文(2篇)
- 2025年五年級上班隊工作總結(jié)(二篇)
- 2025年主要農(nóng)作物新品種展示示范協(xié)議(6篇)
- 大型機械拆卸運輸合同
- 兒童樂園對公裝修合同
- 鐵路熱熔標(biāo)線施工方案
- 賓館改造瓦工單包合同
- 化妝品快遞配送合同范本
- 行政區(qū)域代碼表Excel
- 少兒財商教育少兒篇
- GB 1886.114-2015食品安全國家標(biāo)準(zhǔn)食品添加劑紫膠(又名蟲膠)
- 初二上冊期末數(shù)學(xué)試卷含答案
- envi二次開發(fā)素材包-idl培訓(xùn)
- 2022年上海市初中語文課程終結(jié)性評價指南
- 西門子starter軟件簡易使用手冊
- 隧道施工監(jiān)控量測方案及措施
- 桂花-作文ppt-PPT課件(共14張)
- 配電房日常檢查記錄表.docx
- 高一數(shù)學(xué)概率部分知識點總結(jié)及典型例題解析 新課標(biāo) 人教版 必修
評論
0/150
提交評論