【问题标题】:How to run a VBscript that uses installShield API?如何运行使用 installShield API 的 VBscript?
【发布时间】:2013-05-22 08:24:04
【问题描述】:

我正在尝试创建一个脚本,该脚本将自动执行创建 installShield 对象的过程。

我选择用 VBScript 开发它是因为 Automation Api 对 vbs 开发非常有帮助。 这是我制作的一个非常简单的代码

Set m_ISWiProject = CreateObject("IswiAuto18.ISWiProject")
strFile = "C:\<WindowsFolder>\Profiles\<UserName>\Personal\MySetups\Test.ism"  
m_ISWiProject.OpenProject strFile

问题是当我尝试运行它时,我得到了这个错误

ActiveX component can't create object: 'ISWiAuto18.ISWiProject'

这可能是因为缺少库或程序找不到我正在使用的 API 的源代码。

非常感谢任何有关将 API 与 vbscript 甚至更好的 VBScript 和安装盾牌一起使用的信息。提前谢谢大家。

【问题讨论】:

  • 代码不匹配错误。确保注册了相关的自动化层,并且代码与之匹配。

标签: api vbscript installation installshield


【解决方案1】:

错误

"ActiveX component can't create object"

发生是因为自动化接口是 32 位接口;因此,它必须从 32 位进程加载。如果您在 64 位机器上使用自动化接口,则可能需要通过 32 位可执行文件加载自动化接口。

例如,如果您使用带有自动化界面的 VBScript,您可能需要从 32 位系统文件夹 (SysWow64) 启动 cscript.exe。否则,64位脚本宿主在创建自动化对象时可能会遇到如下错误

这个动作解决了问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多