none
安裝專案如何自動偵測作業系統語言? RRS feed

  • 問題

  • 請問如何製作可以自動偵測作業系統語言的安裝專案,我使手的是visual studio 2005 C#,
    我希望完成的安裝專案在安裝時,可以依作業系統的語言,讓安裝畫面上的文字語言與作業系統相同,
    請問要如何完成,謝謝
    2009年3月6日 上午 02:23

解答

  • 所以說,VS2005/2008 內沒看到這個屬性。

    依照 Windows Installer SDK 的說明,MSI 應該是可以包含多個語系,但是透過 VS2005/2008 的專案是產生不出這種 msi 檔,所以必須完全利用 SDK 裡面的說明來製造。

    大多數的軟體會用個不需要 .Net 的程式自動偵測,提供一個對話框確認是否安裝該語系的軟體,再呼叫應用程式安裝,比如說用 VC 寫,透過 API GetSystemDefaultLangID 取得語系代碼。

    • 已標示為解答 sharoneo 2009年3月11日 上午 03:51
    2009年3月7日 上午 05:58

所有回覆

  • .Net 的安裝專案不會自動幫你偵測語言,你需要自己寫個小程式來跑,然後依據不同語言執行不同目錄下的安裝程式。
    2009年3月6日 上午 03:48
  •   請問我在安裝專案中看到有一個"啟動條件"的設定,Windows Installer 屬性:SystemLanguageID是否與偵測OS語系沒有關係,請問這是設定什麼語言,如何設定呢?另外,請問這個小程式要用什麼寫,寫好再把這個安裝程式包入嗎?那是否要包多個語言版本的安裝檔,謝謝您.
    2009年3月6日 上午 03:55
  • ?
    VS2005/2008 的安裝專案沒看到這個屬性,內建是用 Windows Installer 3.1 ,你是否安裝到新版的 Installer ?
    這個屬性是在 Windows Installer 4.0 才加入的。
    2009年3月6日 上午 06:28
  • 您好,我是新手,所以不太清楚版本.但我是用Visual studio 2005,我的作法:新增專案->其他專案類型(安裝和部署)->安裝專案,專案開啟後->選擇專案(右鍵)->檢視->啟動條件..關於SystemLanguageID是在MSDN上查到的..
    2009年3月6日 上午 06:41
  • 所以說,VS2005/2008 內沒看到這個屬性。

    依照 Windows Installer SDK 的說明,MSI 應該是可以包含多個語系,但是透過 VS2005/2008 的專案是產生不出這種 msi 檔,所以必須完全利用 SDK 裡面的說明來製造。

    大多數的軟體會用個不需要 .Net 的程式自動偵測,提供一個對話框確認是否安裝該語系的軟體,再呼叫應用程式安裝,比如說用 VC 寫,透過 API GetSystemDefaultLangID 取得語系代碼。

    • 已標示為解答 sharoneo 2009年3月11日 上午 03:51
    2009年3月7日 上午 05:58