【问题标题】:Code runs fine in .vbs file but not in a UFT script - Error 429代码在 .vbs 文件中运行良好,但在 UFT 脚本中运行良好 - 错误 429
【发布时间】:2017-06-20 13:11:18
【问题描述】:

我有一行代码:

Dim objExcel
Set objExcel = CreateObject("Excel.Application")
Msgbox Err.number

当我在 .vbs 文件中运行此代码时,它会成功执行而不会引发任何错误(Err.number=0)。(我刚刚在桌面上创建了一个文本文件,将其扩展名从 txt 更改为 vbs,插入了这个代码,保存并双击vbs文件-它运行正确而没有错误-不确定这种方法默认使用32位还是64位wscript.exe。我需要理解这一点。除了主要的,有人可以解释一下吗下面的问题?)

问题:

当我将此代码放在 UFT 脚本中时,它会抛出错误 429 - ActiveX 组件无法创建对象。一直卡在Set objExcel = CreateObject("Excel.Application")线上一段时间,最后抛出错误429。

附加信息:

Windows 7(64 位)

UFT - 32 位 - 版本:12.02

Excel - 32 位(版本 - 14.0.7181.5000)

我已经针对这个问题查看了很多地方,我认为这与一些答案here中提到的架构不匹配有关(不确定我是否将你们指向正确的地方)。

如果有人解释为什么代码在 vbs 中运行良好但在 UFT 脚本中运行良好,我将不胜感激?我真的需要让它在 UFT 脚本中工作。

感谢您的帮助。

【问题讨论】:

  • 我已成功使用该命令在大量 UFT 脚本中创建 Excel 对象。我注意到 Excel 时不时无法正常启动,并且脚本会挂在该命令上,直到最终超时。如果您检查任务管理器,您可能会看到Excel.exe 进程坐在那里。终止进程,UFT 更快地重新获得控制权,允许您重试该步骤,此时(当然在我的脚本中)该进程正常工作。
  • 在我的脚本中,这件事已经通过执行杀死 excel.exe 进程的代码(函数)来处理。它可以正常工作并关闭所有打开的 excel 实例。
  • +1 @Dave。因此,为了更安全,只需在完成所有 Excel 进程后关闭它们。您使用的 Excel 版本是什么?
  • 在两个系统上运行来自 Orasi 的 This 实用程序。这将生成有关系统和 UFT 的详细报告。然后比较并寻找差异。
  • 对于您问题的第一部分,请查看link

标签: excel vbscript qtp hp-uft


【解决方案1】:

CreateObject("Excel.Application") 在未选择ActiveX 时抛出重放错误。

确保在 UFT 插件管理器中选择了 ActiveX 插件。

【讨论】:

  • 我也试过了,第一次成功了,下一次就不行了。
  • 如果您的 Excel 也没有手动打开,则可能会发生这种情况。请尝试重新启动您的机器
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多