通过UFT执行存储在网络驱动器上的VBS文件

问题描述

UFT将使用存储在共享网络上的VBScript文件(该文件安装在CITRIX上)

在下面的屏幕截图中,可以访问位于同一网络位置的Excel文件,但无法打开VBScript文件。 [第1至12行]

文件是下面代码中第6行显示的“ Test1.vbs”

以下代码中的第14、15、16行显示了尝试和调用它的一般方法。但没有用

        Set appExcel = CreateObject("Excel.Application")'excel application
        
        appExcel.Application.Visible = True
        
        '**********************
        strArea = "\\Files\rpl_pt_at\test1.vbs"
        strChain = "PT_Smoke"
        '**********************
        
        Set objWorkbook = appExcel.workbooks.open("\\Files\rpl_pt_at\"+ strChain + ".xlsx")

        appExcel.Worksheets("Sheet1").Activate 'Activating the sheet"Scripts"
        
        executefile strArea
        invokeApplication "\\Files\rpl_pt_at\test1.vbs"
        SystemUtil.Run "\\Files\rpl_pt_at\test1.vbs"," "

注意:VBS和Excel文件位于网络上的同一位置

注意:UFT已安装在Citrix上,并且与文件不在同一网络上。

解决方法

我建议您将网络映射到驱动器号,例如。 Z:\

这样,通过将vbs文件夹位置声明为:

,您将能够引用带有vbs文件的文件夹。
vbsfolder = "Z:\Files\rpl_pt_at"

现在您可以使用文件夹位置并将vbs文件名附加为:

vbsfilelocwithname = vbsfolder & "\\" & "test1.vbs"

然后使用此处所述的如何运行vbs脚本:https://www.learnqtp.com/forums/Thread-How-to-execute-the-two-vb-scripts-Consecutively

Dim oShell
Set oShell = CreateObject("Wscript.Shell")
oShell.run vbsfilelocwithname,True