Delphi – GetThreadLocale返回与GetUserDefaultLCID不同的值?

前端之家收集整理的这篇文章主要介绍了Delphi – GetThreadLocale返回与GetUserDefaultLCID不同的值?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
获取区域设置,例如短日期格式,我们一直使用GetLocaleFormatSettings与GetThreadLocale。这直到现在一直没有问题。

我们的一些用户正在获得与Windows 7中的区域设置中配置的内容不一致的GetThreadLocale的不同值。无论我们尝试什么,我们都无法再现这一点,但是我发送了一个用户测试程序来获取区域设置信息,并且确定GetThreadLocale返回与GetUserDefaultLCID(2057)不同的LCID(1033)。因此,它们不是获得英国的区域设置,而是以美国的区域设置为基础。

我们是否正确地收到区域信息?我们应该使用GetUserDefaultLCID而不是GetThreadLocale吗?

谢谢

解决方法

你并不是唯一的一个。我也在Windows 7中看到这个新西兰,似乎只是因为某种原因才能解决Delphi应用程序。

我们发现的奇怪的是,通过控制面板切换到不同的区域设置,然后切换回NZ解决问题。我会好奇地知道,如果同样的解决方法解决了你,只是为了验证我们是否看到同样的现象。

我想知道如果通过Windows 7安装过程选择非美国的区域设置并不是以某种微妙的方式“做正确的事情”,因为某些原因只能跳出Delphi应用程序。

我已经到了JP的类似的测试代码,试图追踪它并找到一个软件解决方法,但是我们的QA的人已经发现了’区域设置切换’的解决方法,他并没有想到完全重新安装Windows 7以获得回来由于某些原因,原来的时髦状态:-)

猜你在找的Delphi相关文章