為什麼軟體需要安裝?
01-05
首先聲明我是純外行。在我看來軟體安裝包已經有了軟體運行所需全部文件。如果要做到所有軟體不需安裝有哪些困難?現在一些軟體的綠色版相對於安裝版有什麼缺點?
Windows 下安裝程序主要進行以下工作:
1. 檢查運行所需的系統版本、運行時/庫、軟體、硬體、磁碟空間等。2. 清理老版本軟體,為更新做好準備。
3. 複製文件到安裝路徑。不是每個軟體都能在任意路徑下面跑起來的,由於歷史遺留問題或者程序員懶得搞(相信我,這太 TM 難搞了)導致的路徑中空格或者 Unicode 字元問題會導致大量 Bug。所以安裝程序要先判斷。還有一些文件要被寫入其它地方,比如 Shared DLL 以及需要安裝到 Common Files 等等地方的文件。4. 註冊組件,主要是調用 regsvr32 註冊 dll,還有安裝服務等。5. 寫入註冊表,主要是軟體配置文件,卸載信息,開機啟動等等。6. 清理安裝時的臨時文件。
這些大多數都必須讓安裝程序完成。
至於綠色軟體的原理,要麼本身軟體就不依賴註冊表項和 shared dll 等才能運行,要麼是通過一個程序在軟體啟動前臨時寫入,退出後再刪除的。(相當於每次打開都安裝一次,關閉後自動卸載掉。PortableApps 和雲端軟體平台就是這個原理。)軟體,歸根到底是程序因為操作系統的問題,軟體必須依靠操作系統的一些功能才能實現
安裝就是為了告訴操作系統,我要用那些,怎麼用,也就是傳說的寫註冊表。
如果軟體不依賴操作系統那就無所謂了比如一些HTML5的程序,和網頁app,只要有瀏覽器就可以了,就不需要安裝了跟打針吃藥是一個意思,進入機體,發揮作用。
推薦閱讀:
※Android Design 的規範是否不夠明確,或太過瑣碎?
※windows下有什麼好用的屏幕錄像軟體?
※修改電腦的Hosts文件為什麼不能阻斷網路訪問?
※有哪些軟體可以提高日常辦公效率?
※如何徹底關閉迅雷的瀏覽器下載響應功能?
TAG:軟體 |