traducir ingles español buscar .net visual-studio localization

.net - traducir - buscar de ingles a español



Forzar excepciones idioma en ingles (7)

My Visual Studio 2005 es francés, instalado en un sistema operativo francés. Todas las excepciones que recibo durante la depuración o el tiempo de ejecución las obtengo también en francés.

Sin embargo, ¿puedo hacer algo para que los mensajes de excepción estén en inglés ? Para goggling, discutir etc.

Intenté lo siguiente:

Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US"); throw new NullReferenceException();

adquirido

Referencia a objeto no establecida como instancia de un objeto.

Esto es, seguramente, genial ... pero, mientras trabajo en un proyecto francés, no haré hardcode forzando Thread.CurrentUICulture al inglés. Quiero que el cambio de inglés sea solo en mi máquina local y no cambie las propiedades del proyecto.

¿Es posible establecer el idioma de las excepciones sin modificar el código de la aplicación?

En VS 2008 , configure las Herramientas -> Opciones -> Entorno -> Configuraciones internacionales -> Idioma a "Inglés" y arrojando la misma excepción obtenga el mensaje en francés, sin embargo: texto alternativo http://lh4.ggpht.com/ _1TPOP7DzY1E / S1V62xcvHAI / AAAAAAAAC7o / ckLDVFPKh5Y / s800 / exception.png


Desinstale el paquete de idioma francés:

Inicio - Panel de control - Programas y funciones - Paquete de idiomas de Microsoft .NET Framework (perfil de 4 clientes) FRU - Desinstalar

Es posible que deba repetir la desinstalación para cada versión de .NET Framework que encuentre allí.



Finalmente, una solución "aguda" podría ser la siguiente:

[STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); #if DEBUG // Add this; Change the Locales(En-US): Done. Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture; #endif Application.Run(new Form1()); }

Sin embargo me gustaría una solución sin modificaciones en el código del proyecto.

Desde MSDN :

La propiedad CurrentUICulture se establecerá implícitamente si una aplicación especifica un CurrentUICulture . Si CurrentUICulture no se establece explícitamente en el código de una aplicación, se establece mediante la función GetUserDefaultUILanguage en los productos de Interfaz de usuario multilingüe (MUI) de Windows 2000 y Windows XP donde el usuario final puede configurar el idioma predeterminado. Si el idioma de la interfaz de usuario del usuario no está configurado, se configurará según el idioma instalado por el sistema, que es el idioma de los recursos del sistema operativo.

Si una aplicación está basada en la Web, CurrentUICulture puede configurarse explícitamente en el código de la aplicación para que el navegador acepte el idioma del usuario.


No lo intenté, pero de acuerdo con la documentation esa propiedad debe establecerse de manera predeterminada al idioma de la interfaz de usuario actual, que se establece en el panel de control. Por lo tanto, debería funcionar correctamente de forma automática según su configuración internacional.


Para el bien de todos los futuros usuarios de su aplicación, coloque esto en el método Principal :

CultureInfo.DefaultThreadCurrentUICulture = Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture;

Les ahorrará muchos problemas para encontrar el equivalente en inglés de un mensaje de error mal traducido.


Para los usuarios de Win8 / 8.1 que enfrentan este problema, instalar el paquete de idioma inglés y convertirlo en el idioma de visualización de Windows parece ser una forma fácil de resolverlo, ya que Win8 tiene el marco .net integrado en su núcleo.

Probablemente lo mismo para Win10.


Puede establecer la cultura actual en inglés solo en las versiones de depuración:

#if DEBUG Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US"); #endif