首頁/ 汽車/ 正文

Windows 4種安裝程式格式MSI、EXE、AppX和MSIX功能及優缺點對比

Windows 4種安裝程式格式MSI,EXE、AppX和MSIX 功能及優缺點詳細對比

一、Windows四種安裝程式格式:MSI,EXE、AppX和最新的MSIX優缺點對比

Windows之前有三種常見的安裝程式格式 - MSI,EXE和AppX,都各有優點和缺點

1、MSI是Windows最基本的安裝格式:比較簡單

MSI是Microsoft Installer的簡寫, 它使用微軟提供的標準安裝解除安裝介面,本質上 MSI 就是一個數據庫,包含該軟體的所有必要資料。安裝過程不會檢測該軟體是否已經存在於計算機,或者是否缺少什麼必備元件,它會直接覆蓋安裝路徑中的所有檔案。這種簡單粗暴的方式,非常適合無人值守的情況,驅動程式大多也是用 MSI 格式安裝。

特點

1)使用基本的安裝圖形使用者介面(GUI)安裝或解除安裝程式

2)沒有額外的或選項。

3)這個安裝程式是一組壓縮的安裝程式檔案,包含該軟體的所有必要資料。

4)安裝過程不會檢測軟體是否已存在,或者是否缺少任何元件。

5)它可能會覆蓋安裝路徑中的任何檔案。這種簡單性意味著管理員可以輕鬆實現全預設安裝。

2、EXE安裝程式更普及

EXE 格式更普及,大家也最熟悉,EXE安裝檔案本質上就是一個可執行程式,大多數Windows程式都是EXE格式。因為是程式,所以能實現更多功能,比如檢測已安裝項,允許自定義安裝路徑,安裝包語言,安裝密碼,開啟網址,版權協議顯示,檢測安裝缺失的必備執行庫,以及更漂亮酷炫的安裝介面等等(Tmtony)。因為EXE 格式功能更豐富,使用者和開發者都喜歡用,反而比專門的安裝格式 MSI 更常見。大多數軟體開發者都喜歡直接使用Exe安裝程式。我之前做的不少共享軟體均使用Setup Factory 或InstallShield 生成這種安裝檔案格式。

特點

1)安裝程式可以包括語言選項,附件,檢測以前的安裝(更新)等。

2)EXE安裝程式允許自定義安裝路徑並選擇要安裝的元件。

3)開發人員可以將Logo Banner新增到介面中,幷包含軟體協議服務條款,並支援多語言。但是相對地exe安裝程式並不能全自動安裝。

3、AppX安裝程式用於通用Windows應用程式

AppX 是 Windows 8 後推出的新安裝格式,很多網友可能沒見過這種使用這種格式的程式,它就是 UWP 應用。

它繼承了 MSI 的優點,就像手機軟體的安裝過程一樣,幾乎沒有給使用者任何選項,它允許直接覆蓋升級,完全乾淨的解除安裝,Appx 程式執行在沙盒中,不能訪問其他應用記憶體、檔案。這個安裝格式之所以沒有火起來,估計主要是對開發者太不友好,限制了軟體許可權,封包AppX 格式還必須重寫。並且 Windows 8 之前的版本都不能使用這個格式,在還有很多電腦使用Win7 WinXp的情況下,很多程式設計師不太願意使用它來分發程式(小辣椒高效Office)。

1)它結合MSI安裝程式的一些優點。它們是簡單,直接的安裝程式,為終端使用者提供的選擇很少。

2)它們允許從較舊版本的軟體到較新版本的更容易的升級路徑,並允許更簡潔地解除安裝。

3)AppX安裝程式還依賴於容器技術,因此它們與作業系統的其餘部分隔離以確保安全性。

遺憾的是MSX 或EXE安裝程式編寫的程式必須在AppX軟體包的幫助下重寫 或轉換,可能需要藉助工具。AppX軟體包只能用於Windows 10,不適用舊版本。

4、MSIX結合了MSI和AppX的優點及最佳效能

MISX檔案格式集成了Windows之前的檔案格式安裝技術,並繼承了UWP的特性,更加安全和可靠,網路頻寬最佳化,磁碟空間最佳化,程式自定義,並支援全部的Windows應用程式,而且MSIX使程式可更乾淨地解除安裝。MSIX將來可能會取代EXE、 WIN32、 WPF、WinForm和UWP

先說一下為什麼會誕生MSIX:

1、EXE 程式功能強大,但容易被惡意程式和流氓軟體甚至病毒、木馬利用,它帶來便利的同時也給我們帶來極大的安全隱患。

2、MSI 過於簡單,使用者和開發者都不喜歡用。

3、APPX 對比EXE 安全性有了質的提升,但限制條件較多又傷害了開發者的利益,而無法廣泛傳播。

所以MSIX應運而生,MSI + AppX = MSIX , 結合了 MSI 和APPX 的優點而誕生了。

從使用者的角度來看,MSIX 的安裝過程類似 MSI 檔案,但在其背後的工作原理又類似 AppX 檔案。

MSIX安裝器將支援所有的 Windows 檔案格式,包括 Win32、WPF、WinForm 和 UWP。這樣開發者只要遵循 MSIX 封裝協議,將開發的應用程式封裝為 。MSIX 格式後釋出到Windows 10 應用商店,或其他網站,使用者下載後就可以根據自己實際需要自行選擇安裝方式。另外國內很多流氓安裝軟體經常解除安裝軟體後還留下資料夾和登錄檔。使用 MSIX 安裝的程式都被放在類似「沙盒」的環境中,所有檔案、登錄檔都按規則存放(例如 AppData 資料夾),解除安裝時所有資料都會被刪除不會有殘留。

能夠使用的 MSIX 檔案都必須要有受信任的根簽名,並且上傳到應用商店的軟體都需要經過微軟的稽核。所以MSIX 格式可以給使用者帶來更大的安全感,但這樣也可能需要簽名或稽核,可能需要給微軟支付費用或稽核,所以對於個人開發者或資金不足的軟體工作室,有可能還是會選擇免費的 EXE 格式,而不是馬上就遷移到MSIX格式。

另外 MSIX 格式甚至可以在 Windows7,Linux 等平臺上直接執行!

特點

1)MSIX檔案具有AppX的優點,同時類似於MSI檔案。它是一個直接的安裝程式,管理員甚至可以編寫自動“無人值守”安裝指令碼。此外,它依賴於容器技術,可以順利解除安裝和升級。

2)從使用者的角度來看,MSIX安裝類似於MSI檔案,但實際上它更類似於AppX檔案。此外,可以在Microsoft Store外部進行MSIX分發。透過這個流程,可以更輕鬆地將舊程式引入並重新打包為MSIX。

3)MSIX甚至可以在Windows 7,Linux等系統執行!

4)MSIX最令人興奮的功能是微軟釋出了一個SDK來增強跨平臺的相容性。可以支援iOS,MacOS,Android,Linux甚至是舊版本的Windows。開發人員在MSIX檔案中放置特殊指令,以便識別作業系統以及採取的步驟。

5)程式將更乾淨地解除安裝:每次解除安裝軟體最讓人頭疼的是軟體解除安裝不乾淨,使用MSI和EXE安裝程式時,該程式可以更改登錄檔並在整個系統中建立檔案和資料夾(小辣椒高效Office)。解除安裝程式時,這些檔案和登錄檔項經常被忽略,導致解除安裝不乾淨,久而久之大量的垃圾會拖慢電腦速度。使用MSIX,程式安裝在一個容器中,所有必需的檔案都保留在該容器中,或遵循關於這些檔案可能存在的位置的精確,可預測的規則(例如生活在AppData資料夾中)。解除安裝時,所有資料都與程式一致 - 不殘留任何檔案。這意味著您的系統將更加清潔。

如果您正在檢視MSIX檔案並想知道它是否安全,那麼您應該問的第一個問題是您獲得安裝程式的位置。與任何其他程式安裝程式一樣,如果您不信任源,就不要開啟它。在下載檔案之前,確保檔案是安全的。

二、字尾為 。msixbundle的msix檔案怎麼安裝?

Windows10/11 字尾是 。msixbundle的檔案怎麼安裝?

大家在下載軟體或者程式的時候,有遇到檔案字尾是msixbundle的嗎

如壓縮軟體NanaZip的安裝包檔案是

40174MouriNaruto。NanaZip_2。0。396。0_gnj4mf6z9tkrc。msixbundle

副檔名為 。msix(或msixbundle)的檔案是Windows應用程式安裝程式。微軟推出的MSIX作為EXE,MSI甚至AppX軟體包的替代品。

MSIX是新的Microsoft Installer ,不僅將其應用於APPX中的UWP,而且還應用於Win32,WPF和其他Windows安裝程式格式。MSIX需要Windows 10 1809及更高版本,所以低版本的系統需要先升級

在Windows 10中開啟一個。MSIX 檔案並開始安裝打包的應用程式,只需雙擊該檔案即可。但如果低版本win10會遇到安裝不了。MSIX的情況。

三、解決辦法

1、首先在Microsoft Store中搜索 應用安裝程式,並安裝它

Windows 4種安裝程式格式MSI、EXE、AppX和MSIX功能及優缺點對比

2。安裝後,再在msixbundle檔案 右鍵選單 選擇“安裝”

Windows 4種安裝程式格式MSI、EXE、AppX和MSIX功能及優缺點對比

再單擊安裝即可。

3、很快就安裝好了

Windows 4種安裝程式格式MSI、EXE、AppX和MSIX功能及優缺點對比

四、使用命令列方式安裝

在。msixbundle安裝包目錄下按住shift+右鍵空白處,點選“在此處開啟powershell 視窗(s)”

在命令列片 然後輸入 add-appxpackage 。\你的檔名 並回車。即可安裝安裝包。

如 add-appxpackage 。/你的軟體名。msixbundle

如果檔案的檔名過長,可直接按Tab鍵補全檔名,不用手動輸入了。

五、相關知識:什麼是 MSIX

摘自:微軟官網

MSIX 是一種 Windows 應用包格式,可以為所有 Windows 應用提供現代打包體驗。 MSIX 包格式保留了現有應用包和/或安裝檔案的功能,此外,它還為 Win32、WPF 和 Windows 窗體應用啟用了全新的現代打包和部署功能。MSIX 是一種 Windows 應用包格式,可以為所有 Windows 應用提供現代打包體驗。 MSIX 包格式保留了現有應用包和/或安裝檔案的功能,此外,它還為 Win32、WPF 和 Windows 窗體應用啟用了全新的現代打包和部署功能。

MSIX 可使企業掌握最新資訊,並確保其應用程式始終保持最新狀態。 它使 IT 專業人員和開發人員能夠交付以使用者為中心的解決方案,同時透過減少重新打包的需求,來降低應用程式的所有權成本。

關鍵功能

可靠性。 MSIX 提供可靠的安裝,在數百萬次安裝中,其成功率達到了引以為豪的 99。96%,並提供有保證的解除安裝體驗。

網路頻寬最佳化。 MSIX 只會下載 64k 大小的資料塊,可以減輕對網路頻寬的影響。 此項優勢是利用 MSIX 應用包中的 AppxBlockMap。xml 檔案來實現的(參閱下面的詳細資訊)。 MSIX 旨在用於新式系統和雲。

磁碟空間最佳化。 使用 MSIX 時,不會在應用之間複製檔案,Windows 將跨應用管理共享的檔案。 應用仍然彼此獨立,因此更新不會影響共享該檔案的其他應用。 即使平臺跨應用管理共享的檔案,也能保證乾淨解除安裝。

亮點

將現有的 Windows 應用打包。 使用 MSIX 打包工具可為任何舊式或新式 Windows 應用建立 MSIX 包。 MSIX 打包工具簡化了打包體驗,提供互動式使用者介面或命令列來轉換和打包 Windows 應用。

安裝 MSIX 應用包。 使用應用安裝程式可安裝或更新在本地或任何內容分發網路上提供的任何 MSIX 應用包。

將執行時修補程式應用於已打包的應用。 包支援框架是一個開放原始碼工具包,有助於在無權訪問原始碼時將修補程式應用於現有桌面應用,以便其在 MSIX 容器中執行。

隨時隨地使用 MSIX。 由於使用了開源 MSIX SDK,MSIX 包的用途更廣泛,並且不區分平臺。 該 SDK 提供在任何平臺(包括 Windows 10 平臺和非 Windows 10 平臺)上驗證和解包應用包所需的全部 API。

應用有效負載

有效負載檔案是生成應用時建立的應用程式碼檔案和資產。

AppxBlockMap。xml

包塊對映檔案是一個 XML 文件,其中包含應用的檔案列表,以及儲存在包中的每個資料塊的索引和加密雜湊。 為包簽名時,將使用數字簽名來驗證和保護塊對映檔案本身。 使用塊對映檔案能夠以增量方式下載和驗證 MSIX 包,在安裝應用檔案後,還可以使用塊對映檔案來支援對應用檔案進行差異更新。

AppxManifest。xml

包清單是一個 XML 文件,其中包含系統在部署、顯示和更新 MSIX 應用時所需的資訊。 此資訊包括包標識、包依賴項、所需功能、可視元素和擴充套件點。

AppxSignature。p7x

為包簽名時,將生成 AppxSignature。p7x。 在安裝之前,需要為所有 MSIX 包簽名。 藉助 AppxBlockmap。xml,平臺可以安裝包,並可對平臺進行驗證。

應用容器的優勢

使用 MSIX 打包的應用在一個輕型應用容器中執行。 MSIX 應用程序及其子程序在該容器內部執行,並使用檔案系統和登錄檔虛擬化進行隔離。 所有 MSIX 應用都可以讀取全域性登錄檔。 MSIX 應用寫入到其自身的虛擬登錄檔和應用程式資料資料夾,解除安裝或重置應用時會刪除此資料。 其他應用無法訪問 MSIX 應用的虛擬登錄檔或虛擬檔案系統。

六、自己製作Msix檔案

可以下載MSIX Packaging Tool 製作試試,打枹後的檔案會比較小

為了促進開發者使用新的格式,微軟提供了非常簡便的 MSIX 轉換工具,開發人員可以直接將現有的 EXE、MSI 或 AppX 檔案轉換為 MSIX 格式。

工具下載地址:https://docs。microsoft。com/zh-cn/windows/msix/

Windows 4種安裝程式格式MSI、EXE、AppX和MSIX功能及優缺點對比

Windows 4種安裝程式格式MSI、EXE、AppX和MSIX功能及優缺點對比

七、MSIX支援的平臺及在不同平臺的區別

下表顯示了不同版本的 Windows 支援哪些 MSIX 功能和方案。

Windows 桌面

功能

Windows 10 1809 (LTSC 2019)

Windows 10 1903

Windows 10 1909

Windows 10 2004

Windows 10 20H2 (LTSC 2021)

Windows 10 21H1

Windows 10 21H2

Windows 11 21H2

允許提升

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

應用安裝程式檔案支援

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

延遲註冊標誌

✔️

✔️

✔️

✔️

✔️

強制從任何版本降級更新

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

強制預配

✔️

✔️

✔️

✔️

✔️

打包桌面應用的標識

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

修改包

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

本機 MSIX 安裝和解除安裝

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

包支援框架 (PSF)

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

Windows 服務

✔️

✔️

✔️

✔️

✔️

非應用商店包的包完整性強制實施

✔️

✔️

✔️

✔️

✔️

對 Windows 應用服務的支援

✔️

✔️

✔️

✔️

✔️

共享包容器

✔️

具有外部位置的包

✔️

✔️

✔️

✔️

✔️

託管的應用

✔️

✔️

✔️

✔️

✔️

靈活虛擬化

✔️

✔️

✔️

“開始”選單組

✔️

✔️

✔️

舊上下文選單支援

✔️

可變包目錄

✔️

MSIX 持久標識

✔️

Windows Server 支援

功能

Windows Server 2019

Windows Server 2022

允許提升

✔️

✔️

應用安裝程式檔案支援

✔️

✔️

延遲註冊標誌

✔️

強制從任何版本降級更新

✔️

✔️

強制預配

打包桌面應用的標識

✔️

✔️

修改包

✔️

✔️

本機 MSIX 安裝和解除安裝

✔️

✔️

包支援框架 (PSF)

✔️

✔️

Windows 服務

✔️

非應用商店包的包完整性強制實施

✔️

對 Windows 應用服務的支援

✔️

共享包容器

具有外部位置的包

✔️

託管的應用

✔️

包格式支援

下表顯示了不同版本的Windows 10支援哪些包格式。

包格式

Windows 10 (1809)

Windows 10 (1903)

Windows 10 (1909)

Windows 10 (2004)

Windows 10 (20H2)

Windows 10 (21H1)

Windows 10 (21H2)

Windows 11 (21H2)

。msix

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

。msixbundle

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

。appx

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

。appxbundle

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

重要在 2004 Windows 10之前,必須啟用 Windows 應用的旁載入,以允許在企業、教育和 LTSC SKU 上安裝非應用商店 Windows 應用。 預設情況下,Windows 10 家庭版和專業 SKU 已啟用旁載入 Windows 應用。

Microsoft Store

下表顯示了不同版本的 Windows 10 支援哪些 Microsoft Store 功能。

功能

Windows 10 (1809)

Windows 10 (1903)

Windows 10 (1909)

Windows 10 (2004)

Windows 10 (20H2)

Windows 10 (21H1)

Windows 10 (21H2)

Windows 11 (21H2)

釋出

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

更新通知

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

流式安裝

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

Delta 彙報

✔️

✔️

✔️

✔️

✔️

✔️

✔️

✔️

備註。appx 或 。appxbundle 適用於所有上面列出的Windows 10版本。 該表僅反映 。msix 或 。msixbundle 行為。

Microsoft Store 提交

MSIX 包支援的最低 OS 版本已在包清單檔案中的

TargetDeviceFamily

元素內以

MinVersion

形式列出。 例如,MSIX 包可以列出

MinVersion=“10。0。17701。0”

為最低支援版本,這意味著 MSIX 包可以在此版本和更高版本的作業系統上執行。

Windows 10 版本 1709、1803 和 1809 支援主流的企業部署方案。 這包括透過 Microsoft Endpoint Configuration Manager、Microsoft Intune、PowerShell 或雙擊安裝進行安裝。

目前,透過 Microsoft Store 和 適用於企業的 Microsoft Store 安裝 MSIX 需要Windows 10 版本 1809及更高版本。

非 Windows 平臺

MSIX SDK 是一個開放原始碼專案,允許開發人員在所有平臺上普遍使用 MSIX 包格式。 任何允許第三方生成外掛或擴充套件的跨平臺客戶端應用都可以使用 SDK。 客戶端應用開發人員可以使用Windows 10平臺上提供的應用擴充套件模型,並在非Windows 10平臺上(如 macOS、iOS、Android 和 Linux)上使用 MSIX SDK。

八、小結

MSIX 雖然很多優點,並且在Windows各版本上已經可以使用了,但真正全面普及估計還需要很漫長時間,因為要考慮程式設計師的習慣 意願以及遷移的成本,另msix還需要簽名和微軟稽核,短期內安裝包還是以 EXE 為主。

希望本文對您有所幫助。也可收藏 點贊及關注我們

相關文章

頂部