2011-12-06 27 views
2

我有一個用C#編寫的Visual Studio工程。相同工程的兩個設置(visual studio 2008,c#)

我想爲不同的語言設置2種不同的設置。例如,setup-en表示步驟爲英語,setup-es表示西班牙語安裝人員。

我想根據設置建立項目。也就是說,如果我構建setup-en我希望它在我的項目中檢查並用英語爲用戶界面構建項目,西班牙語也是如此。

有什麼辦法可以管理這個嗎?希望我很清楚。

回答

1

做出行動上的啓動項目中的,事端是這樣的:

public void GetSettings() 
    { 
     string fileName = "./Names.xml"; 

     if (File.Exists(fileName)) 
     { 
      XmlTextReader xml = new XmlTextReader(fileName); 

      while (xml.Read()) 
      { 
       if (xml.Name.Equals("pgsql")) 
       { 
        try 
        { 
         button2.Text = xml.GetAttribute("button2"); 
         button3.Text = xml.GetAttribute("button3"); 
         button4.Text = xml.GetAttribute("button4"); 
         button5.Text = xml.GetAttribute("button5"); 
        } 
        catch (Exception) 
        { 
         throw new Exception("Settings: Failed to get all settings"); 
        } 
       } 
      } 
     } 
     else 
     { 
      throw new Exception("Settings: pgsql.xml not found!"); 
     } 
    } 

這個例子是基於文件的,Names.xml,它包含的項目。製作一些語言文件夾並在這些文件夾中包含Names.xml文件。

進行設置,使用HM nis編輯器,在http://hmne.sourceforge.net/找到。 當運行此程序插入作爲文件名setup-EN並選擇所有的DLL和.EXE文件。還包括英文 - Names.xml文件夾/地圖 我希望這能爲你工作

0

我認爲你可以做到這一點,通過存儲標籤名稱,按鈕文本,...在XML文件,爲每種語言。當您選擇語言時,所選語言的值將被加載。

0

我不認爲只有在設置中才能做到這一點。

您可以將所有文本放入單獨的文件中,並將英文版本添加到您的英文程序中,並將西班牙文版本添加到西班牙文版本中。

不過,這不會影響按鍵等(除非你有他們每個人看這個文件)

我想我有2個版本的(視覺)代碼和形式,檢查的最好方法是什麼顯示前選擇語言。但是這是在實際的程序而不是設置中完成的。

1

這不支持Visual Studio安裝項目。它只能使用安裝創作工具來完成,該工具支持爲每種語言生成單獨的包。

你可以找到在這裏設置工具列表: http://en.wikipedia.org/wiki/List_of_installation_software

它提供本地化的人大多是商業化。本地化的安裝程序不是一個簡單的功能,這就是它未包含在Visual Studio中的原因。

相關問題