|
|
1
15
你不是唯一一个。我在新西兰的windows 7中也看到过这种情况,据我所知,它似乎只是出于某种原因绊倒了Delphi应用程序。 奇怪的是,我们发现通过控制面板切换到不同的区域设置,然后再切换回nz可以解决这个问题。我很想知道相同的解决方法是否能解决这个问题,只是为了确认我们看到的是相同的现象。 我想知道,通过Windows7安装过程选择非美国地区设置是否在某种微妙的方式上“做对了事情”,因为某种原因,Delphi应用程序只能被绊倒。 我找到了与JP类似的测试代码,试图追踪它并找到一个软件解决方案,但我们的QA人员后来找到了“区域设置切换”解决方案,他不想完全重新安装Windows 7以返回原始的时髦状态,原因如下:—) |
|
|
2
18
有关某些背景信息,请查看以下内容: http://www.siao2.com/2010/03/19/9980203.aspx 因此,这个问题似乎在Vista和Windows7上都有体现。出现这种情况是因为微软似乎在贬低 区域标识 有利于 区域名称 .
总结一下:相关的API调用都对注册表值进行操作,可以在
不管怎样,
因此产生了混乱。 顺便说一句,所提到的解决方案 JP in a previous post 应该扩展到
因为(如果我读对了!)根据docco,getuserdefaultlcid调用将负责用户自定义。 经过更多的研究,Vista完全不受影响。我还有一些细节…
相关的API调用都对注册表值进行操作,这些值可以在
|
|
|
3
6
当我开始使用新的Windows7计算机时,我注意到了同样的问题。 我花了一段时间试图找出造成这种情况的原因,但一无所获。 所以我把这两行添加到了一些单元初始化部分。
奇怪的是,这种行为只发生在我的计算机上,因为办公室里几乎没有其他的Win7计算机。 |
|
|
4
1
我刚测试了一个新安装的Windows7 Starter版本,也遇到了同样的问题,但我发现getthreadLocale返回的区域恰好是Windows安装程序所建议的区域设置,但我在安装期间将其更改为另一个,wich是getuserdefaultlcid返回的区域设置,也是我想要使用的区域设置,(i)为此制作了一个小程序)。因此,为用户更改了区域设置,但仍在某个地方指定了第一个区域设置,并且由GetThreadLocale返回。正如JP评论的那样,安装确实存在问题,它不会改变所有可以找到它的地方的语言环境。似乎通过控制面板更改区域设置可以很好地完成工作,这可以解释WY将其更改为建议的工作,顺便说一下,它解释了为什么其他计算机不能有相同的问题(如果您在安装期间没有更改区域设置)。 希望这有帮助。 |
|
5
1
一 new post in the RTL forum 建议在sysutils->initsyslocale中使用此修复程序:
并进一步解释:
|