相关疑难解决方法(0)

如何在调试时将Visual Studio异常消息语言更改为英语

我正在使用安装了XP Dutch版本的机器上工作.Visual Studio 2005以英文安装.调试时,我遇到了令人烦恼的问题,所有.NET Framework异常消息都出现在Dutch中,这使得它们真的毫无价值.我试图通过将控制面板中的区域设置设置为美国英语然后重新安装.NET Framework 2.0(英文版)来将其更改为英语,但显然这并没有解决问题.有没有人有想法?


我认为我的问题被误解了,我不想改变当前的线索文化.我遇到的问题是当你调试并单步执行代码时突然出现其中一个异常窗口,其中包含异常消息.此异常消息以荷兰语显示,我希望它显示为英语.我希望这澄清了这个问题.

c# visual-studio-2005

63
推荐指数
3
解决办法
4万
查看次数

配置Visual Studio以英语显示错误消息

我目前在另一个国家工作,我的电脑安装了非英文版的Windows.我并不关心这一点,但是当Visual Studio显示错误消息时我非常关心,因为它们也被本地化为与Windows相同的语言.

有时我会花很多时间试图找到它意味着什么,这很无聊......

有没有办法配置Windows或Visual Studio以英文显示消息?

localization visual-studio-2008

58
推荐指数
4
解决办法
3万
查看次数

用英语强制例外语言

我的Visual Studio 2005是法语版,安装在法语操作系统上.我在调试或运行时收到的所有异常也都是用法语获得的.

但是,我可以做一些异常消息是英文的吗?对于护目镜,讨论等

我尝试了以下方法:

Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
throw new NullReferenceException();
Run Code Online (Sandbox Code Playgroud)

获得

你调用的对象是空的.

这当然很酷......但是,当我在法国项目上工作时,我不会硬编码强制Thread.CurrentUICulture为英文.我希望英语更改仅在我的本地计算机上,并且不要更改项目属性.

是否可以在不修改应用程序代码的情况设置异常语言?


在VS 2008中,将工具 - >选项 - >环境 - >国际设置 - >语言设置为"英语"wnd抛出相同的异常获取ex message en French,但是: alt text http://lh4.ggpht.com/ _1TPOP7DzY1E/S1V62xcvHAI/AAAAAAAAC7o/ckLDVFPKh5Y/S800/exception.png

.net localization visual-studio

40
推荐指数
4
解决办法
1万
查看次数

如何完全避免本地化的.NET异常消息

当我的.NET应用程序发生错误时,我收到一条异常消息(在我的例子中)瑞典语.这对大多数用途来说都是无用的,因为.

  • 该消息通常只是原始(英语)异常消息的翻译版本[1]

  • 异常消息很少用于诊断问题,通常包括搜索错误消息.这意味着猜测或使用Web服务来查找原始英语消息.

[1]我不是在开玩笑.示例:在绑定失败的上下文中"调用程序集"被完全混淆.它被翻译成"之称集结号",因为英语是如何使用相同的字是一个呼唤作为一个它被调用.几乎就像有人用字典一字一句地翻译它.

所以我想:我希望能够得到英文异常消息,始终如一,在非英文Windows安装(我希望改变应用程序的线程文化).

有一个类似的问题(英语中的异常消息?),但这是在记录的概念.在那个级别,我可以改变线程文化.

但我希望更改是全局的,并且还包括"不是我的代码"例外.

有没有办法可以配置或"黑客"(例如通过替换资源文件)?我是唯一一个认为翻译异常消息的人,在.NET中是一个可怕的设计缺陷吗?

对不起,如果这是部分咆哮和部分问题.

.net

38
推荐指数
1
解决办法
4778
查看次数

强制.NET框架中的英语异常

在使用ASP.NET MVC时,我注意到我系统上安装的.NET框架发出的异常消息是德语.我真的更喜欢英文短信,所以我可以将它们贴在SO上.

我知道之前已经问过这个问题了,但奇怪的是,建议的解决方法似乎都不适用于我的情况.我已经尝试过以下方法:

  • 将我的Windows系统切换到英语语言环境并重新启动Visual Studio
  • 设置工具 - >选项 - >环境 - >国际设置 - >语言到"英语"
  • 在抛出异常之前将线程区域设置设置为英语,如下所示:

    Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US"); Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");

    //打电话给我错误的方法......

那么,我如何让.NET框架发出英语异常消息呢?是否有任何方法可以在每个解决方案甚至整个系统的基础上执行此操作?

编辑:在排除单元测试时抛出异常.我不确定这是否是设置线程文化无效的原因.

.net asp.net-mvc localization exception

36
推荐指数
3
解决办法
1万
查看次数

防止异常消息被翻译成用户的语言?

在显示win32/.net例外消息时,如何让我的应用程序始终使用英语?

我收到了这条消息,看起来有人用babelfish来翻译它(它是瑞典语):"System.ComponentModel.Win32Exception:Programmet kunde inte starta eftersom programmets sida-vid-sidakonfigurationärfelaktig."

非常无益,谷歌有4次点击,没有一个有用.所以我必须猜测原始邮件是什么,并谷歌.(原来是:"应用程序无法启动,因为它的并排配置不正确.")

这一次,找出原始的错误信息是相当简单的,从一开始就用英语留言当然会节省我的时间.

那我该怎么做?

.net c# globalization exception

31
推荐指数
2
解决办法
8565
查看次数

为ASP.NET MVC错误设置不同的语言

我在Visual Studio 2015上为葡萄牙语配置了一个ASP.NET MVC应用程序.在调试此应用程序时,我已设置<customErrors mode="Off" />,但所有错误都以葡萄牙语显示,我想用英语查看它们.

我试图在Web.config中设置它:

<globalization uiCulture="en-US" culture="en-US" enableClientBasedCulture="true" />
Run Code Online (Sandbox Code Playgroud)

在Global.asax我试过:

Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("en-US");
Run Code Online (Sandbox Code Playgroud)

Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture;
Run Code Online (Sandbox Code Playgroud)

我也卸载了Nuget包Microsoft.AspNet.Mvc.pt-br,没有成功.

这个问题很相似,但我需要一个不涉及更改机器配置或安装组件的解决方案,因为我的工作场所不允许这样做.

如何使用特定语言(在本例中为英语)显示所有错误消息?

c# globalization asp.net-mvc

14
推荐指数
1
解决办法
1900
查看次数

C# - 当应用程序使用其他语言时,以英语获取异常消息?

我正在尝试本地化我的程序,但我希望发送给开发人员的错误消息以英文显示.我无法找到一种方法来实现这一点,因为似乎如果在抛出错误时将UI文化设置为另一种语言,则会抛出该语言.由于我自己并没有编写这个程序,并且它非常大,我认为创建新的try catch块以尝试在发生错误或可能发生错误时将文化设置回英语是不切实际的.目前,CurrentCulture和DefaultThreadCurrentCulture在整个应用程序中始终设置为英语,而CurrentUICulture设置为最终用户的语言.

当我解决方法时,我目前有一个函数已经遍历一个错误列表(使用System.Resources.ResourceSets(我假设是Windows错误,但我还需要一种方法来查找.NET错误,以便我可以迭代这个字符串替换了其他语言中的匹配错误,并用它们的英语等价物替换它们,以便在应用程序崩溃时构建一个大的错误消息发送给开发人员.真的,我没有太多的翻译,因为大部分的message是一个服务器堆栈跟踪并显示抛出异常的位置.最大的问题是转换内部异常消息,有时是主异常消息,因为有时抛出的错误不会出现在ResourceSet中,有时会使用格式化项目,如'{0 }".

这是我到目前为止翻译剩余错误的代码.我仍在努力添加正则表达式模式来翻译使用"{0}"之类的错误,所以如果有人对此提出建议或更好的方法,我会很感激建议.

    public static string TranslateExceptionMessageTest(string exmsg, Exception e, CultureInfo currentui)
    {
        CultureInfo test = Thread.CurrentThread.CurrentUICulture;
        string matchingstr = "";
        string newstr = exmsg;
        string resourcecollection = "";

        Assembly a = e.GetType().Assembly;
        ResourceManager rm = new ResourceManager(a.GetName().Name, a);
        ResourceSet rsOriginal = rm.GetResourceSet(currentui, true, true);
        ResourceSet rsTranslated = rm.GetResourceSet(new CultureInfo("en-US"), true, true);
        foreach (DictionaryEntry item in rsOriginal)
        {
            if (exmsg.Contains(item.Value.ToString()))
            {
                if (item.Key.ToString() == "Word_At") // sometimes with spanish errors this replaces words containing the letters 'en' with …
Run Code Online (Sandbox Code Playgroud)

.net c# localization exception resourcedictionary

11
推荐指数
1
解决办法
3376
查看次数

应该将异常消息全球化

我正在开展一个项目,我刚刚开始做全球化应用程序所需的所有工作.经常出现的一件事是是否全局化异常消息,但确保string.Format使用CultureInfo.CurrentCulture而不是CultureInfo.InvariantCulture.此外,这意味着异常消息将存储在可以标记为特定于文化的资源文件中.

所以问题是,异常消息应该全球化还是应该留在InvariantCulture或作者的国家; 在我的情况下en-US.

c# globalization exception

10
推荐指数
2
解决办法
2697
查看次数

获取英语异常消息而不是本地语言

在Windows 8上使用德语系统上的Visual Studio 2012 RC,我将我的所有异常本地化为德语,这实际上意味着我不能谷歌任何对他们有用的东西.为了解决这个问题,我已经使用以下方法将IDE更改为英语:

Tools --> Options --> Internetional Settings --> Language --> English
Run Code Online (Sandbox Code Playgroud)

不过,我在本地化的德语中得到了例外.我尝试使用以下代码更改代码中的ThreadUI Culture:

Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-us");
Run Code Online (Sandbox Code Playgroud)

遗憾的是,在WinRT中,线程命名空间在WinRT中消失了.因此我试过:

System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo("en-us");
Run Code Online (Sandbox Code Playgroud)

我仍然收到德国的异常消息.有谁知道如何获取异常消息的非本地化版本?

.net locale localization windows-runtime

9
推荐指数
1
解决办法
3978
查看次数