2013-04-25 122 views
1

我创建了一个VB脚本,它将QTP的对象存储库文件(.tsr)转换为XML,然后转换为Excel。此Excel文件格式也是通过VB脚本配置的。它运作良好,但是,我试图在一台新机器上运行此操作,并且出现错误:ActiveX组件不能创建对象:Mercury.ObjectRepositoryUtil

ActiveX组件不能创建对象:Mercury.ObjectRepositoryUtil。

脚本:

Public Function ExportTSRToXML(TSRPath,XMLPath) 
Set XMLRepositoryObj = CreateObject("Mercury.ObjectRepositoryUtil") 
XMLRepositoryObj.ExportToXML TSRPath, XMLPath 
ExportTSRToXML = XMLPath 
Set XMLRepositoryObj = Nothing 
End Function 

这里是我的步骤来解决这个问题:用REGSVR32 SYSWOW64下2.使用CSCRIPT.EXE跑VBScript文件

1.注册RepositoryUtil.dll在步骤2上面提到,我看到脚本执行时出错: “Microsoft VBScript运行时错误:无效的过程调用或参数”

我在想什么?不能弄明白。

谢谢你的帮助。再一次,这个代码在多台机器上工作得很好。新机器(64位)具有统一功能工具11.5而不是QTP 11.0。

+0

当您注册DLL时,它是否成功? – Motti 2013-04-25 19:57:46

+1

是的它成功了。 – user2034602 2013-04-25 20:14:02

+0

我提取了代码,只运行'CreateObject'和'ExportToXML'部分,它在我的描述之后适用于我。难道是错误在别的地方? – Motti 2013-04-28 08:12:48

回答

0

尝试从命令行启动脚本:%SystemRoot%\SysWow64\cscript <yourscript-here>。 64位机器自动启动64位解释器,并且此com对象与其不兼容

相关问题