如何限制构建仅支持EN“Microsoft.Expression.Interactions.resources.dll”,并避免使用DE,KR,FR,ES等...?

问题描述 投票:16回答:4

当我构建我的WPF项目时,它会创建几个语言文件夹,每个文件夹包含“Microsoft.Expression.Interactions.resources.dll”。

奇怪的是,我从未创建过我的资源字符串到其他语言的翻译,但它仍然创建了DE,KR,FR,ES文件夹。我只需要EN。

如何将本地化限制为EN?

c# wpf visual-studio localization expression-blend
4个回答
2
投票

您正在看到这些文件,因为您正在使用Blend SDK for .NET(直接或通过Prism库)。该SDK包含本地化资源,因此它们包含在您的构建输出中。

Here's how you create a Silverlight build that targets a specific culture. WPF的工作方式应该相同。它的主旨是:

  1. 在解决方案中进行新配置。
  2. 编辑每个项目文件以将SupportedCulture指定为“en”(注意大小写)。

如果您的解决方案非常庞大,那么这可能需要做很多工作。老实说,在WPF应用程序中使用这些附加文件不会有任何损害 - 它们只占用更多的磁盘空间。您也可以只归档和发送文化资源。假设你已经将你的NeutralResourcesLanguage定义为你的应用程序将始终能够找到它的资源(它们只是用英语)。


1
投票

@ Mike-Post解决方案对我不起作用:(也许是因为VS2012。我添加了<SupportedCultures>en</SupportedCultures>但没有任何改变,并且还有一个警告,它是无效的元素。

但这是另一种解决方案:http://social.msdn.microsoft.com/Forums/vstudio/en-US/feb23879-660d-43d1-93ef-90a63eef70c6/how-can-i-remove-localization-information-from-my-wpf-project

只需从Program Files (x86)\Microsoft SDKs\Expression\Blend\.NETFramework\v4.0\Libraries删除这些文件夹(en en)


0
投票

我只是像这样处理它。转到引用的属性并执行以下操作:

设置“复制local = false”

保存

设置“复制local = true”

保存

就是这样。

Visual Studio 2010最初不会在参考标记中设置为True,并将“copy local”设置为false会导致它创建标记。之后它将相应地设置为true和false。


-1
投票

我对Output文件夹中不需要的本地化文件夹和resources.dll文件有同样的不满。删除对Microsoft.Expression.Drawing的引用解决了它。

当然,这意味着我不能在该库中使用任何东西;我在XAML文件中使用<draw:Arc>来绘制弧形。我刚刚发现了一种绘制弧线的不同方法。

© www.soinside.com 2019 - 2024. All rights reserved.