2017-11-13 82 views
5

Mam aplikację, w której przechwytuję wyjątki i pokazuję tekst wiadomości użytkownikowi jako część komunikatu o błędzie. Mimo że RAD Studio (10.1) jest ustawione na język angielski, a Locale ID jest ustawione na 409 Angielski w opcjach informacji o wersji dla wszystkich celów, komunikat o błędzie jest wyprowadzany w języku niemieckim. Dzieje się tak zarówno na niemieckim Windows 10, jak i na innych maszynach Windows z innymi językami, nawet japoński klient to dostał.Tekst komunikatu wyjątku Delphi w niewłaściwym języku

Wyjątkiem jest wyjątek systemowy, np. Nie można otworzyć pliku, plik nie został znaleziony, ale wygląda na to, że dzieje się to we wszystkich wyjątkach, których nie zgłaszam z własnym tekstem wiadomości.

Projekt został niedawno poddany migracji z Delphi 2007 i musiałem wykonać ręczne czyszczenie w plikach projektu dotyczących numerów wersji. Ale sprawdzanie Locale w pliku projektu nie stanowi niespodzianki: 1033 -> 0409 $ - angielski.

Gdzie może być powód niemieckich wiadomości?

+2

* delphi-10,1 - ** berlin ***. Nie, to nie może być to. ;-) Ale może masz inne konfiguracje kompilacji (takie jak debug/release 32bit/64bit) i ustawiłeś poprawny język dla niektórych, ale nie wszystkich. – GolezTrol

+3

Rozumiem, że ta aplikacja została zbudowana na niemieckim komputerze? – Dsm

+0

Z pewnością nie: Wszystkie konfiguracje mają tę samą wartość dla identyfikatora ustawień narodowych. –

Odpowiedz

1

Po wyszukaniu rozwiązania za każdym razem, gdy mogłem spędzić kilka minut w ostatnich dniach, rozwiązałem go!

Podczas korzystania z narzędzia BDSSetLanguage.exe w folderze bin Rad Studio można nie tylko zmienić język IDE, ale także język biblioteki. IDE został ustawiony na angielski, a biblioteka na niemiecki. Ustawienie języka biblioteki na angielski rozwiązało problem.

Dzięki @mrabat wysłał mnie we właściwym kierunku. Ale ponieważ jego wskazówka była tylko hackem, a nie stałym rozwiązaniem, myślę, że nie mogę tutaj udzielać żadnych oficjalnych kredytów.