gpt4 book ai didi

javascript - 如何在 Javascript 自定义操作中管理 MSI session 状态?

转载 作者:行者123 更新时间:2023-11-28 10:24:57 26 4
gpt4 key购买 nike

我有一个 ISAPI DLL,它是 IIS 的附加组件。我使用 WIX 3.0 为其构建安装程序。

在安装程序项目中,我有许多用 Javascript 实现的自定义操作。其中之一在安装启动时运行,会停止任何正在运行的 IIS 网站。另一个在安装结束时启动 IIS 网站。这个东西有效,CA 在正确的时间和正确的条件下被调用。但这种逻辑很天真。它会在开始时停止所有网站(即使它们已经停止)并在最后启动所有网站(即使它们之前已停止)。这显然是错误的。

我想要做的是在 session 中跟踪哪些网站在开始时需要停止,然后在最后仅尝试重新启动这些网站。使用 ServerState property 可以轻松获取网站的状态在 CIM 对象上。我的问题是,我应该如何在 MSI session 中存储这些信息?

很容易将一条信息填充到 session Property 中。 ,但是存储一组 N 条信息(每个网站一个)的最佳方式是什么?在某些情况下可能有 1 个网站,在某些情况下可能有 51 个网站。

我想我可以使用每个不同的网站名称来创建一个不同的属性名称。只是不确定这是最好的、最有效率的、最有效的做事方式。另外,在 MSI session 属性的名称中使用斜杠是否合法? (网站名称中会有斜杠)

建议?

最佳答案

您可能想查看:

VBScript (and Jscript) MSI CustomActions suck

C++ 或 C# 是更好的选择。如果您的应用程序已经依赖于框架,那么在安装程序中添加依赖项是一个不错的逻辑选择。 WiX 有部署工具基础(DTF),它有一个自定义操作模式,感觉很像 jscript。然后,您可以创建网站及其运行状态的字典,并将其序列化为单个属性。在背面,您可以重新构建该集合,然后对其采取行动。

更不用说 DTF 中的调试故事要好得多。

关于javascript - 如何在 Javascript 自定义操作中管理 MSI session 状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4650504/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com