2009-03-02 26 views
10

Trong các phiên bản trước của VS.NET hoặc .NET framework, bạn đã nhận được thông báo ngoại lệ tiếng Anh theo mặc định. Nếu bạn đã cài đặt 'gói ngôn ngữ', bạn nhận được thông báo ngoại lệ bằng ngôn ngữ của gói ngôn ngữ đó.Visual Studio.NET 2008 không cung cấp cho tôi ngoại lệ tiếng Anh-tin nhắn

Bây giờ, tôi đang làm việc với một tiếng Anh VS.NET 2008 (không có gói ngôn ngữ đã được cài đặt) trên một Windows Vista Hà Lan.

Khi tôi đang phát triển và tôi viết một số mã kích hoạt ngoại lệ, thông báo ngoại lệ mà tôi nhận được, bằng tiếng Hà Lan (ngôn ngữ của hệ điều hành của tôi). Tôi không muốn nó bằng tiếng Hà Lan; Tôi muốn nó bằng tiếng Anh. (Các lý do rõ ràng: dễ dàng hơn với Google và những thông báo lỗi được dịch là crap).

Trong VS.NET, cài đặt quốc tế của tôi được đặt thành 'tiếng Anh', trong Windows Vista, cài đặt vùng của tôi được đặt thành 'Tiếng Hà Lan/Bỉ'. Làm thế nào tôi có thể nhận được thông báo ngoại lệ bằng tiếng Anh, mà không phải thay đổi bất kỳ điều gì đối với cài đặt khu vực của tôi trong Windows?

+0

Câu hỏi rất hay, nó cũng liên tục xảy ra với tôi. Và thật khó để tìm kiếm câu trả lời !! –

+0

Cảm ơn bạn đã đặt câu hỏi này! Tôi đã có cùng một vấn đề và các bản dịch lỗi của Hà Lan là khủng khiếp. Chỉ cần lưu ý rằng tôi không thể thay đổi Windows Vista sang ngôn ngữ khác mà không mua phiên bản đắt nhất (thậm chí còn tệ hơn khi sử dụng Windows Mobile, vì hầu hết các cửa hàng ở đây chỉ bán phiên bản tiếng Hà Lan). –

Trả lời

8

Sau khi tìm kiếm trên Stackoverflow và các trang khác trên mạng, có vẻ như Windows Vista sẽ cài đặt gói ngôn ngữ nào và dường như không có cách nào gỡ cài đặt các gói ngôn ngữ đó (trong XP này) .

Tôi không có Vista Ultimate (cho phép bạn cài đặt nhiều gói ngôn ngữ cạnh nhau).

Vì vậy, những gì tôi đã làm bây giờ, là thế này:

tôi đã tạo ra một biểu tượng biên dịch tùy chỉnh có điều kiện (DEVELOPER), và trong ứng dụng của tôi, tôi đã mã này:

#if DEVELOPER 

Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-us"); 

#endif 

Tôi chỉ cần đảm bảo rằng, khi tôi xây dựng ứng dụng của mình để triển khai, tôi không bao gồm định nghĩa có điều kiện này ... (Nhưng, tôi có thể dễ dàng thực hiện việc này, vì ứng dụng của tôi dưới CI).

+0

hmm bạn biết điều này có thể chỉ khắc phục được sự cố mà tôi đã có, cảm ơn bạn đã đăng bài này :) – RYFN

-1

Rất có thể là do bạn đã cài đặt NetFX của Hà Lan.

+0

theo như tôi biết, không tồn tại không có localized DotNetFx dutch. Chỉ cần chắc chắn: bạn có biết cách tôi có thể xác minh xem tôi là người Hà Lan hay tiếng Anh không? –

0

Thread.CurrentThread.CurrentUICulture dựa trên ngôn ngữ của hệ điều hành được cài đặt của bạn. Vì vậy, cài đặt một phiên bản tiếng Anh của hệ điều hành của bạn là lựa chọn duy nhất của bạn.

Hoặc giống như bạn đã nêu cài đặt Thread.CurrentThread.CurrentUICulture thành "en-Us" trong mỗi ứng dụng bạn mã whitch dường như khá 'khá lúng túng'.

+0

Nó thực sự khó xử và không có gì khác ngoài giải pháp. Cài đặt lại hệ điều hành của tôi là không có tùy chọn. –

0

có sẵn các gói ngôn ngữ cho .Net Framework cho hầu hết mọi ngôn ngữ.

Hãy xem những gì bạn tìm thấy trong phần mềm đã cài đặt và gỡ cài đặt gói ngôn ngữ này. Điều này sẽ gây ra rằng VS2008 sẽ mang thông báo lỗi vv bằng tiếng Anh.

+0

AFAIK, điều này đúng với các phiên bản trước của .NET. Kiểm tra câu hỏi của tôi, nơi tôi đã đề cập đến điều này. –

Các vấn đề liên quan