GetThreadLocale zwraca inną wartość niż GetUserDefaultLCID?
Aby uzyskać ustawienia regionalne, np. krótki format daty, zawsze używaliśmy GetLocaleFormatSettings z GetThreadLocale. To do tej pory zawsze działało bez problemu.
Kilku naszych użytkowników otrzymuje różne wartości GetThreadLocale, które nie pasują do tego, co skonfigurowali w ustawieniach regionalnych w systemie Windows 7. Nie byliśmy w stanie odtworzyć tego bez względu na to, co spróbujemy, ale wysłałem jednemu użytkownikowi test program, aby uzyskać informacje o ustawieniach regionalnych, i na pewno GetThreadLocale zwraca inny LCID (1033) niż GetUserDefaultLCID (2057). Zamiast ustawiać ustawienia regionalne w Wielkiej Brytanii, kończą się na ustawieniach regionalnych US.
Czy niepoprawnie otrzymujemy informacje o lokalizacji? Czy powinniśmy używać GetUserDefaultLCID zamiast GetThreadLocale?
Dzięki