如何(永久)设置语言环境

时间:2019-10-14 14:21:52

标签: qtp hp-uft uft14

在UFT脚本(以前称为QTP)中,我试图在开始执行脚本之前将语言环境更改为给定值。我们的脚本在虚拟机上运行,​​这些虚拟机有时定义了不同的语言环境,从而导致报告错误(例如,不同的日期格式)。通过在脚本开始时设置区域设置,我想避免这些错误。

我知道如何在脚本中更改语言环境,这非常简单:

        If Currentlocale <> 2057 Then
            SetLocale "2057"
        End If

如果我将此代码包含在UFT脚本中,则语言环境在运行时会更改为2057,并保持不变,直到脚本完成。完善!尽管我们有数十个脚本,所以我不想在每个脚本中都包含这段代码。

尽管每个脚本都必须登录,但是登录过程作为一个函数驻留在与所有这些脚本链接的函数库中。如果我将简单代码包含在该单一登录函数中,那么我看到的是:执行登录过程时(因此,当您使用登录函数时)会更改语言环境,但是一旦执行了登录过程并且脚本执行下一步,区域设置将返回原始位置。因此,似乎函数库不会在执行登录功能后立即将新的语言环境传递给脚本。如果你知道我的意思...

任何建议如何解决?

1 个答案:

答案 0 :(得分:0)

是的,可以。使用SetLocale(lcid)(或其他适当的位置)进行测试的开始是这样的:

SetLocale("en-gb") ' sets locale to UK 
SetLocale("en-us") ' sets locale to US 
SetLocale("de") ' sets locale to Germany 

https://admhelp.microfocus.com/uft/en/all/VBScript/Content/html/882ca1eb-81b6-4a73-839d-154c6440bf70.htm

要更改语言环境,我们也可以使用注册表... Change the system Region/Location setting using vbs