【问题标题】:Launch QTP on remote machine using C#使用 C# 在远程机器上启动 QTP
【发布时间】:2013-06-16 21:41:46
【问题描述】:

我正在尝试使用 C# 代码在远程计算机上启动 QTP。下面是我用来在本地机器上调用 QTP 的代码。我知道我们可以通过添加远程服务器 IP 地址来使用 VBS 调用 QTP,如下所示。有人可以让我知道在哪里将服务器 IP 地址添加到下面的 C# 代码中以在远程机器上启动 QTP 并运行测试用例吗?

VBS 代码

Dim qtApp
Set qtApp = CreateObject("QuickTest.Application","Server IP Address")

我想实现的 C# 代码

protected void btnExecuteScript_Click(object sender, EventArgs e)
{
          QuickTest.Application QTPInstance = new QuickTest.Application();
          QTPInstance.Launch();
          QTPInstance.Visible = true;
}

【问题讨论】:

    标签: c# automation qtp remote-server


    【解决方案1】:

    要在 C# 中创建远程对象,您需要先获取远程 Type

    Type remoteQTP = Type.GetTypeFromProgID("QuickTest.Application", "Server IP Address");
    QuickTest.Application qtp = (QuickTest.Application)Activator.CreateInstance(remoteQTP);
    
    qtp.Launch();
    qtp.Visible = true;
    

    【讨论】:

    • 嗨莫蒂,感谢您的回答。执行代码后出现以下错误。如果您知道此错误,请帮助我。由于以下错误,从计算机 检索具有 CLSID {2B9B8E92-EBAA-44AF-A23C-9FBD08EAFA54} 的远程组件的 COM 类工厂失败:80070005。
    • @user545359 错误表示访问被拒绝,VBS 中的CreateObject 有效吗?
    • 实际上在 VBS 中创建对象并不能正常工作。所以我对此进行了一些研究,发现需要在我们的服务器之间打开防火墙端口才能进行通信,并且我需要获得 QTP 服务器的权限。完成此设置后,我将尝试并通知您。感谢您的所有帮助,我非常感谢。
    • Motti,如果你不介意我还有一个关于 QTP 的问题。在这个链接中,我问了一个与 QTP 相关的问题,你能看看这个,如果这可能的话,请告诉我。 stackoverflow.com/questions/17179496/…
    • @user545359 抱歉我不知道。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-27
    相关资源
    最近更新 更多