问题标签 [installshield-2016]

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 投票
3 回答
7296 浏览

installation - 如何清理损坏或丢失的安装(在添加/删除程序中不可见):该产品的另一个版本已安装错误

我在 Windows Server 2012 机器上,有些东西搞砸了。我试图从添加/删除程序工具中卸载我的应用程序。当我尝试这样做时,我看到以下错误消息:

在此处输入图像描述

所以我继续并在 Windows 管理添加/删除程序工具中所有已安装应用程序列表的帮助下删除了以下注册表项:

在这个特定的路径中,我能够在其中的密钥C14DB2B2-6089-4C96-A878-77BA377BABBF的帮助下确定 guid hive 属于我的产品DisplayName

此后,我不再在添加/删除程序工具窗口中看到我的应用程序。所以,我以为我已经完成了。

<<看到@Nikolay 的回答后更新>>

在这种混乱之后尝试进行全新安装时,有两种方法可以遇到我所面临的错误。我正在解释两条路线:

  1. 当我尝试通过运行相同的myapplication.msi文件来安装应用程序时,当我单击欢迎屏幕上的“下一步”按钮时,它会显示在屏幕下方。似乎程序仍然安装:

在此处输入图像描述

  1. 在另一个混乱中,不知何故我的 MSI 在开始发出新的 MSI name 的构建过程中被重命名myapplication_x.msi。当我尝试通过运行新命名的myapplication_x.msi文件来安装应用程序时,它会给我下面显示的错误消息框:

在此处输入图像描述

所以总的来说,我无法安装我的产品的新 MSI,并且在“添加/删除程序”窗口中没有看到任何内容。从注册表的角度来看,我似乎仍然缺少一些东西。有人可以通过清理更多注册表项或更好的方法(如果存在清除机器上已安装产品的痕迹)来帮助我摆脱这个问题吗?

0 投票
1 回答
474 浏览

windows-installer - 如何在 installshield 中的向导上刷新向导 UI

我正在 installshield 2016 中开发一个基本的 MSI installshield 项目。我的向导步骤中有一个编辑字段和文本区域。文本区域实际上是一个错误标签。Visible文本区域控件的属性最初设置为false.

将一些输入放入编辑字段后,用户Next >在向导步骤中按下按钮。我们对用户输入执行一些验证,然后IsUserInputValid如果用户输入有效,则将私有属性设置为 1。属性的初始值为IsUserInputValid0。HasValidationRun标志的值为 0。

现在在行为部分,我添加了一个事件来显示编辑文本区域控件,如下所示:

在此处输入图像描述

单击Next >按钮后,错误标签不显示。但是,如果我更改了通过验证的输入,那么向导将移动到下一步,并且就在转换发生之前,该标签变得可见一秒钟。如果我Show正确定义了事件的条件,我不知道为什么 UI 没有自行刷新。

0 投票
1 回答
959 浏览

installation - 如何在 installshield 向导完成屏幕上显示安装程序日志文件?

我正在使用以下命令从命令提示符启动我的安装程序:

由于我使用的是/l*v选项,因此安装程序会自动在完成屏幕上向我显示一个复选框,其标签为“显示 Windows 安装程序日志”。

在此处输入图像描述

现在我选中复选框,然后单击完成按钮,但它没有打开install.log在安装过程中创建的文件。我可以install.log在启动安装的目录的根目录中看到该文件。为什么日志文件打不开?

0 投票
1 回答
215 浏览

uwp - 使用 Installshield 2016 生成 UWP 应用程序版本时忽略自定义操作

我使用 InstallShield 2014 创建了一个基本 MSI 项目,为我的桌面应用程序生成 MSI 发布包。我正在使用 Installscript 规则文件作为自定义操作来为我的桌面应用程序安装依赖库和驱动程序包,并且它在 MSI 构建中按预期工作。

现在我想生成 UWP 应用程序版本,以便在 Windows 应用商店的 Windows 10 S 机器上安装相同的应用程序。所以我已经下载并安装了 Installshield 2016 专业版的试用版,它将支持我们从现有的 MSI 项目生成 UWP 应用程序包 - http://learn.flexerasoftware.com/IS-WBNR-InstallShield-2016-Whats-New

我已按照这些步骤从我现有的基本 MSI 项目生成 UWP 应用程序 - https://www.youtube.com/watch?v=0K5XTJ2aV6o。UWP 应用发布包 (.appx) 成功生成并安装在 Windows 10 机器上。但它忽略了我的自定义操作脚本,并且没有安装任何依赖库和驱动程序。我收到安装成功消息,但实际上,它什么也没安装。

我注意到构建日志并发现以下警告消息。看起来我的自定义脚本在 UWP 应用程序包中被忽略了。我们是否需要更改任何设置以使其接受我的自定义操作?

请为我提供解决此问题的方法。

0 投票
2 回答
6998 浏览

wpf - 从 Installshield 更改 UWP 应用的安装位置

我创建了一个 WPF 桌面应用程序并使用 Installshield 生成 MSI 版本。我创建了一个 MSI 设置来将我的应用程序安装在 C:\MyApp\ 位置,而不是使用程序文件。它按预期工作正常。

然后我使用相同的 InstallShield 项目生成并测试了一个 UWP 应用程序。Installshield 2016 支持桌面桥集成来执行此操作 - http://learn.flexerasoftware.com/IS-WBNR-InstallShield-2016-Whats-New

我注意到 UWP 应用程序安装在默认位置 (C:\Program Files\WindowsApps),而不是使用 Installshield 中定义的位置。

我想从我的 InstallShield 项目中更改此位置。请帮助我找到解决此问题的方法。

0 投票
2 回答
1481 浏览

installshield - 在 InstallShield 项目中使用安装脚本创建 SQL 连接

在 InstallShiled 安装项目中,我们有一定的要求,我们需要验证给定 SQL Server 上是否存在任何特定的数据库。

为此,我们使用以下安装脚本:

使用上面的安装脚本,它给出了以下错误:

知道我在这里做错了什么吗?

0 投票
1 回答
609 浏览

windows-installer - 如何使用 Installshield 的内置自定义操作 - 它们在执行序列中不可见

installshield 中有两种类型的自定义操作,即内置的和用户定义的。我想使用 installshield 的内置自定义操作命名ISSQLServerValidate来检查是否可以连接到给定的 SQL Server 实例或不使用用户提供的用户凭据。此处提供了内置自定义操作的详细ISSQLServerValidate信息。我正在开发一个基本的 MSI 项目。

但是当我去任何一个User InterfaceExecute序列时,我根本看不到它。我能够看到大量的标准操作(例如 AppSearch、LaunchConditions)和许多其他内置自定义操作(例如 ISPreventDowngrade、setUserProfileNT 等)。

在此处输入图像描述

为什么ISSQLServerValidate我的项目中看不到内置自定义操作?

0 投票
0 回答
40 浏览

installshield-2016 - 一个通用 InstallShield 文件中的多个配置文件

我有多个适用于不同环境(如测试、QA 和产品)的安装屏蔽文件。我需要创建一个Master.ism文件,我想在其中创建 QA、Prod 和 Test 等配置。Master.ism文件将包含通用设置,所有子配置文件将包含特定设置。在构建Master.ism时将获取所需的配置文件并.exe相应地创建。

改变的好处 我想要一个共同的改变,而不需要改变所有的文件。

0 投票
1 回答
374 浏览

windows-installer - 次要升级期间不会替换 DLL

在次要升级期间,我收到以下错误:

SELMGR:ComponentId '{C1B06529-966C-2A82-EF0C-A5CFA0113872}' 已注册到功能 'X',但未出现在组件表中。不支持从功能中删除组件!

我不明白为什么我会收到这个错误,或者为什么 installshield 会尝试删除它。确实该值不在组件表中,但在第一次安装时不存在

在第一次安装期间,我有以下行:

执行操作:ComponentRegister(ComponentId={C1B06529-966C-2A82-EF0C-A5CFA0113872},KeyPath=[path]\Newtonsoft.Json.dll,State=3,,Disk=1,SharedDllRefCount=1,BinaryType=0)

有没有办法告诉 installshield 忽略这个?

0 投票
2 回答
585 浏览

visual-studio-2013 - InstallShield 2016 未安装服务

我正在尝试在 InstallShield 2016 中配置和安装服务。我使用组件向导添加了该服务。当我运行安装程序时,Window Installer 弹出窗口出现在我的屏幕上,其中包含可以传递给服务的不同选项。如何将这些选项传递给服务?我尝试使用组件向导而不是组件向导来创建服务。在这两种情况下,结果都与上述相同。我一直没有成功地寻找如何做到这一点的解释。

设置和弹出窗口的屏幕截图:

在此处输入图像描述

在此处输入图像描述