在UFT脚本(以前称为QTP)中,我试图在开始执行脚本之前将区域设置更改为给定值。我们的脚本运行在虚拟机上,有时会定义不同的语言环境,这会导致报告错误(例如,不同的日期格式)。通过在脚本开始时设置语言环境,我希望避免这些错误。
我知道如何在脚本中更改语言环境,这非常简单:
If Currentlocale <> 2057 Then
SetLocale "2057"
End If如果我将此代码包含到我的UFT脚本中,区域设置将在运行时更改为2057,并一直保持到脚本结束。太棒了!我们有几十个脚本,所以我不想在每个脚本中都包含这段代码。
虽然每个脚本都必须登录,但登录过程作为一个函数驻留在一个函数库中,该函数库链接到所有这些脚本。如果我将简单的代码包含到这个单一的登录函数中,我看到的是:当执行登录过程时(因此,当您在登录函数中时),区域设置会发生变化,但是只要执行了登录过程,脚本执行下一步,区域设置就会恢复到原来的位置。因此,在执行login函数时,函数库似乎没有立即将新的locale传递给脚本。如果你明白我的意思..。
有什么建议怎么解决吗?
发布于 2019-10-15 03:56:13
不,你可以的。使用SetLocale(lcid) (或其他适当位置)进行测试的开始是这样的:
SetLocale("en-gb") ' sets locale to UK
SetLocale("en-us") ' sets locale to US
SetLocale("de") ' sets locale to Germany 要更改区域设置,我们也可以使用注册表...Change the system Region/Location setting using vbs
https://stackoverflow.com/questions/58378772
复制相似问题