同一项目的两个设置(visual studio 2008,c#)
我有一个用C#编写的Visual Studio项目 我想有两个不同的设置不同的语言。例如,步骤的同一项目的两个设置(visual studio 2008,c#),c#,visual-studio-2008,setup-deployment,C#,Visual Studio 2008,Setup Deployment,我有一个用C#编写的Visual Studio项目 我想有两个不同的设置不同的语言。例如,步骤的setup en为英语,步骤的setup es为西班牙语安装程序 我希望该项目将根据设置而建立。也就是说,如果我构建setup en,我希望它在我的项目中进行检查,并为用户界面使用英语和西班牙语构建项目 有什么办法来处理这个问题吗?希望我说得够清楚。我想您可以通过存储标签名称、按钮文本等来做到这一点,。。。在xml文件中,针对每种语言。当您选择语言时,将加载所选语言的值。我认为这不可能仅在设置中完成
setup en
为英语,步骤的setup es
为西班牙语安装程序
我希望该项目将根据设置而建立。也就是说,如果我构建setup en
,我希望它在我的项目中进行检查,并为用户界面使用英语和西班牙语构建项目
有什么办法来处理这个问题吗?希望我说得够清楚。我想您可以通过存储标签名称、按钮文本等来做到这一点,。。。在xml文件中,针对每种语言。当您选择语言时,将加载所选语言的值。我认为这不可能仅在设置中完成 您可以将所有文本放入一个单独的文件中,并将英语版本添加到英语程序中,将西班牙语添加到西班牙语程序中 但是,这不会影响按钮等(除非您让每个按钮都查看此文件)
我想最好的方法是将(可视)代码和表单分为两个版本,并在显示之前检查所选语言。但这是在实际程序中完成的,而不是在设置中完成的。在项目启动时执行操作,如下所示:
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编辑器,位于。
运行此程序时,请插入文件名设置,然后选择所有DLL和.EXE文件。还包括English-Names.xml文件夹/map
我希望这对您有用Visual Studio安装项目不支持这一点。只能使用支持为每种语言生成单独包的设置编写工具来完成 您可以在此处找到安装工具列表: 提供本地化的主要是商业化的。本地化安装程序不是一个简单的功能,这就是为什么它没有包含在VisualStudio中