2010-02-26 225 views
9

是否可以使用WIX創建多語言安裝程序?是否可以使用WIX創建多語言安裝程序?

+0

你的意思是本地化? – Ikaso 2010-02-26 10:20:08

+0

如果是這樣使用此鏈接http://www.tramontana.co.hu/wix/lesson2.php#2.6。 – Ikaso 2010-02-26 10:26:40

+1

是本地化但多文化, 因此用戶可以選擇適當的lang。從組合框開始安裝過程之前。 – shahjapan 2010-02-26 10:39:40

回答

14

如果您創建嵌入式轉換,並且MSI安裝程序會根據您的系統區域設置自動應用其中的一個,則可以在不使用引導程序的情況下執行此操作。

有關完整的詳細&腳本,請,請點擊此鏈接:

http://www.geektieguy.com/2010/03/13/create-a-multi-lingual-multi-language-msi-using-wix-and-custom-build-scripts/

他們說,這是微軟安裝的未公開的特性,所以,請小心使用。

+1

這適用於我(Windows 7.0 sdk vbs),以及從[開發人員指南到wix 3.6](http://packtlib.packtpub.com/library/9781782160427/ch12lvl1sec82)以下步驟,以確保我的代碼頁和產品語言首先是正確的。 – Epu 2013-04-18 19:50:22

3

這可能不是不可能的,但在運行時確定UI語言的情況下,使用Wix編寫MSI可能非常非常困難。 Wix是關於構建時本地化的,也就是說,您可以使用相同的源文件輕鬆創建不同的MSI,每個MSI都有自己的UI語言。

+0

+1我看到的所有東西都顯示了在構建時完成了本地化,並輸出了單獨的本地化MSI。 – 2010-02-26 19:05:37

+0

但是MSI可以在它旁邊有MST文件。 MST文件將MSI轉換爲另一種語言。 – Ikaso 2010-02-27 07:10:25

+1

@Ikaso這是真的,但我不認爲它解決了OP的問題,因爲你仍然需要MSI外部的東西來決定應用哪個MST。 – 2010-02-27 14:00:44

0

顯然有一個解決方案,您的問題使用WIX。你需要做的是創建一個引導加載程序。有一個名爲Setupbld.exe的工具可以幫助解決這個問題。你可以閱讀更多關於John Robbins' Blog

0

絕對。首先,您的.msi必須包含嵌入到其中的外語MSI的所有轉換(請參閱Embedded Transforms)。這可以通過微軟的MsiTran.exe和WiSubStg.vbs完成,在GeekTieGuy link這篇文章中提到。其次,您的.wxs文件的Package element必須包含語言屬性,其中包含所有支持的區域設置ID的逗號分隔列表,例如,

Languages="1033,1031,3082,1036,1040,1041,1042,1043,1046,1049,2052,1028" 

現在,您可以用外語系統上雙擊.msi程序並自動拿出正確的語言

相關問題