簡短版 -我有一個MSI文件,其中包含一個TreeView對象,用於指定要包含在安裝中的模塊。這些可以使用命令行參數傳遞,但不幸的是作者沒有發佈用於自動安裝的組件列表。有什麼方法可以從MSI文件中提取TreeView對象以及相關的友好名稱或說明?如何從.MSI文件的樹視圖對話框中提取節點
我曾嘗試使用Orca提取組件表,其中包含來自.MSI的組件名稱,但它不包含用戶界面的TreeView部分中可見的友好名稱或描述。
背景(你可以跳過此)
我有自己的MSI文件的一套安裝包。每個都由我無法通信的團隊創建的單個Setup.exe依次調用。自動完成安裝,我可以通過調用
Setup.exe [/productinstallerargs=args]
但是通過我想安裝相關的MSI文件的組成部分,由作者發表的組件列表中沒有被2年更新一次,而有有是一些新的構建和增加的組件。爲了使用無提示安裝(包括所需的組件)自動化更新的版本,我需要一個組件名稱列表以及它們的友好名稱傳遞給Setup.exe。友好名稱是人們部署軟件可以理解的名稱。
我這樣做的最明顯的方法是從MSI中獲取TreeView對象,該對象鏈接到組件名稱和友好名稱。一旦我爲每個組件提供了這兩個名稱,就可以列出工程師需要安裝的組件的友好名稱,並使用它們需要的所有軟件包進行靜默安裝,並生成正確的參數。因此,通過從MSI或任何其他方法中提取TreeView對象來獲得與組件名稱相符的友好名稱將非常感謝。
您可以嘗試使用dark.exe將MSI反編譯爲wxs文件。它可能會保留所有功能啓用條件和內容,爲您完成所有功能組件映射。 –