【问题标题】:VBScript Wix Custom Action ParametersVBScript Wix 自定义动作参数
【发布时间】:2015-06-23 01:53:13
【问题描述】:

我试图在 WIX/MSI 安装程序中使用 VBScript,从命令行调用: 脚本.vbs

这已在旧安装程序的 cmd 文件中调用,但是否可以在 Wix 中的单个自定义操作中执行此操作?我曾尝试使用 ExeCommand 传递 args,但这会将 CA 类型更改为 66 并尝试执行 . 这甚至可能吗?如果是这样,如何去做呢?我拒绝“安装” vbs 文件,运行它,然后将其删除(或将其保留在程序文件目录中)。

【问题讨论】:

  • WiX 支持仅调用 vbscript 自定义操作,它们可以在二进制表中,因此不需要安装。通常人们通过属性传递参数,但要回答您需要显示一些 WiX 以查看您的 CA 是立即的、延迟的等。stackoverflow.com/questions/9429858/… VBScript CA 不被接受。
  • 事情是,我不想重写所有遗留代码/自定义操作,它也是与 IIS 5/6 接口的东西,为 HTTPHandlers 设置权限和映射。我知道 VBScript 很糟糕,但我只是想找出目前应对的最佳方法。当我们在遥远的将来只支持 IIS 7 时,可以将服务器管理对象带入 c# 并且可以使用 vbs 完成! (希望)
  • 我正在使用 adsutil.vbs 是否有帮助?以为它是一个内部 vbs 脚本,但结果它是一个 windows 脚本.. 试图将 args 传递给该脚本并在不复制到系统的情况下运行。
  • 您需要安装它,因为您别无选择,只能使用 cscript 命令行运行它,这需要它在系统上。它不会在 Windows Installer 中作为自定义操作托管,因为它使用由 WSH 提供的 WScript 对象,而不是 Windows Installer。 WiX IIS 扩展没有帮助吗?
  • 如果你的回答不接受它,它就会回答这个问题。我会看看 IIS 扩展,因为我没有编写合适的网站安装程序,只为项目的这个小部分安装处理程序,我没有考虑过扩展可能有用.. 我知道愚蠢

标签: vbscript wix windows-installer installation


【解决方案1】:

您需要安装它,因为在您的场景中,您别无选择,只能使用 cscript 命令行运行它,而这要求它在系统上。它不能作为 Windows Installer 中的自定义操作托管,因为它使用由 WSH 提供的 WScript 对象,而不是 Windows Installer。 WiX IIS 扩展没有帮助吗?

另一种选择是根据您的要求修改该脚本,以便它可以在不安装它的情况下作为自定义操作运行 - 这取决于您对 vbscript 的熟悉程度,并避免在那里使用 WScript 对象。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-11
    • 1970-01-01
    相关资源
    最近更新 更多