问题标签 [installscript]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1172 浏览

controls - 如何动态更改 InstallShield 控件属性?

我的 IS 安装程序中有一个自定义对话框,我想根据文本区域中写入的文本(在运行时)更改一些属性,例如高度、顶部等。

是否有任何 InstallScript 函数可以处理这些参数(例如用于更改文本的 CtrlSetText)?

0 投票
1 回答
1465 浏览

installation - InstallShield 2012 Spring Express:如何在卸载时以管理员身份运行自定义操作?

我正在使用 InstallShield 2012 Spring Express。我终于发现,在我的应用程序安装过程中,如果我将其“In-Script Execution”属性设置为“Deferred Execution In System”,我可以使用提升的进程 EXE(应用程序清单设置为“requireAdministrator”)运行自定义操作语境。”

那很好。

但现在我必须能够在卸载过程中做同样的事情。到目前为止,即使在 InstallShield 2012 Spring Express 的付费版本上,我也无法让它工作。

首先,对于“卸载期间的自定义操作”部分,只有“系统更改之前”和“系统更改后”两个条目。

我没有尝试将我的自定义操作添加到“系统更改之后”,因为我需要运行的 EXE 是我的包的一部分(因此到那时会被删除。)所以我将它添加到“系统更改之前” 。” 现在由于某种原因,当我将它添加到“系统更改之前”时,没有“脚本内执行”选项。而且因为我没有这个选项,所以当我的卸载尝试运行提升的进程 EXE 时,它会失败并出现错误 1721...这与我在安装过程中遇到的错误完全相同,直到我更改了“在-Script Execution”选项改为“Deferred Execution In System Context”。

那么,如何在卸载过程中让提升的进程 EXE 正确运行?InstallShield 是否无法正确处理此问题?

谢谢,JP

0 投票
1 回答
181 浏览

installscript - 需要 Installscript Project Setup.exe 的 /installfromweb 命令行开关示例

谁能给我一个传递给 setup.exe 的 Installshield 中 /installfromweb 开关的示例?

我正在尝试将此开关与“Installscript 项目”而不是“Installscript MSI”一起用于基于 Web 的安装。

0 投票
2 回答
223 浏览

installation - 无法获取产品的主要版本号?

我有代码来检索产品的主要版本。将属性声明为PRODVER_MAJOR = 2 Code 如下:

0 投票
2 回答
3819 浏览

.net - InstallShield 与 .NET 4.5 嵌套安装

我的安装程序需要重新分发 .NET 框架,但我不想有 setup.exe 包装器,所以我编写了一个自定义操作来启动 .NET 的 Web 安装程序,如果最终用户机器还没有它. 这适用于 .NET 4.0 和 .NET 3.5,但对于 .NET 4.5,.NET 安装程序报告“等待另一个安装完成”并失败 - 如果我的自定义操作在 Exec 序列中,此错误消息将是正确的,但是我特别将它放在 UI 序列的早期,以允许嵌套安装。

完全相同的 InstallShield 配置/代码适用于 .NET 3.5 和 .NET 4.0,但不适用于 .NET 4.5,我使用的是 Microsoft 的标准 Web 安装程序:http: //www.microsoft.com/en-ca/download /details.aspx?id=30653

有谁知道这个问题的任何解决方案或解决方法?

这是我的自定义操作的代码:

0 投票
2 回答
1976 浏览

string - 带有 Installshield Installscript 的 MsiGetProperty 字符串太长

我正在使用 MsiGetProperty 从安装程序获取字符串参数值。之后,我调用了一个托管 dll 并传递了该值:

当我传递 sDbHost 的值时,当我从托管代码接收到它时是这样的:srvdata-02NULNULNULNULNULNUL...... 但是在界面中我只写了“srvdata-02”。

使用相同的代码,Installshield 2010 没问题,现在我将它升级到 installshield 2012。请问您有什么解决方案吗?

0 投票
2 回答
3179 浏览

installshield - 在 installshield basic msi 静默安装期间禁止显示消息框,但在可视安装期间允许它

我使用 InstallShield 2012 创建了一个基本的独立 msi 文件。在开始安装之前需要满足一个先决条件。为了检查这个先决条件,我创建了一个基于 InstallScript 的自定义操作并添加到序列中的第一个位置。如果检查失败,msi 应显示错误消息然后退出。因为 msi 将通过双击直接运行并通过 msiexec 静默运行,所以错误消息应该足够聪明,可以在直接安装期间启动消息框(UI 可用)并在静默安装期间抑制任何消息框(我使用“SpretfMsiLog " 将错误消息写入 msi 日志文件)。

我尝试使用“msiexec /qn”运行静默安装,但消息框仍然出现。有没有办法使用 InstallScript 代码检测安装模式,从而相应地隐藏/显示消息框?

0 投票
1 回答
702 浏览

file - Installshield 2011:从一个窗口获取路径,从第二个窗口获取文本

今天是个好日子。我分配的任务包括创建简单的仅安装脚本项目,该项目应该有 2 个窗口:首先将提示用户输入路径并在此指定位置创建文本文件,而第二个将提示输入文本并保存用户编写的任何内容到这个文本文件中。

有趣的一点是,我有少量的 installshield 经验(完成了教程……嗯,是的,仅此而已),除此之外,我的编程经验也很少。据我了解,我应该首先创建两个自定义对话框窗口(例如通过从标准对话框中克隆它们),然后创建带有函数的 .rul 文件,确定每个对话框的行为。之后,将它们包含在主 setup.rul 中并在特定时间点调用函数。

问题是 - 什么样的对话窗口/功能/时间点最适合此类任务?作为参考,我搜索了“序列号验证示例项目”,但老实说,它自定义默认窗口的方式让我更加困惑......所以,请有人帮忙吗?谢谢你。

0 投票
2 回答
1197 浏览

windows - Installscript:如何在不重新启动 explorer.exe 进程的情况下关闭资源管理器窗口?

无论如何要关闭所有资源管理器窗口而不重新启动 explorer.exe 进程?

上下文:-在卸载基于 installshield 的安装程序期间,我不得不删除一个 dll,该 dll 用于显示文件的右键单击上下文菜单。在卸载期间,我不得不删除 dll。不幸的是,它被 explorer.exe 锁定了。

无论如何只要关闭资源管理器窗口而不重新启动 explorer.exe 进程?

0 投票
1 回答
1140 浏览

windows - InstallScript:32 位的 LaunchAppAndWait 问题?

我已经构建了一个外壳扩展 dll,用于显示 64 位和 32 位的右键单击上下文菜单。我在安装过程中使用 LaunchAppAndWait 函数在 installscript 中注册 dll。

它适用于 64 位机器,但不适用于 32 位机器。

有人遇到过这个问题吗?