- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试即时理解 InstallShield (2009)/InstallScript,因为我正在修改其他人的安装脚本。
安装过程中的一个对话框以前有一个文本框,要求一个 SQL Server 实例,假定某个数据库名称。现在我刚刚完成了一项增强功能,使您可以选择任何数据库名称,而不仅仅是默认名称,我需要向该对话框添加一个字段,以便用户可以输入所选的数据库名称。猴子看,猴子做,只需创建一个新控件并复制和调整表单为第一个文本框提供的任何功能 - 很简单,对吧?
嗯...这里有问题。似乎“SdShowDlgEdit1”表单是随 InstallShield 一起提供的通用内容,并且在所有需要一个文本框的对话框中都被使用。改变那个形式,它在任何地方都会改变它被称为...所以现在我有一个虚假的第二个文本框出现在我的安装中,之前有一个文本框。
糟糕。撤消更改,并更改对“SdShowDlgEdit2”的引用,这是 - 您猜对了 - InstallShield 的标准格式,用于需要 2 个文本框的对话框。现在那就太好了……除了之前的开发人员在我之前到达那里并在该表单中添加了一个“浏览”按钮,用于他需要第二个文本框包含文件夹路径的地方。我不想要那个“浏览”按钮,我也不能删除它。
所以我想,为什么我不创建自己的自定义表单,而不是让别人受制于人呢?所以我克隆表单,将新实例重命名为“EnterDbDetails”,删除“浏览”按钮并使表单看起来恰到好处。
然后我返回到 InstallScript 以重定向到“EnterDbDetails”并发现 EzDefineDialog
函数要求我传入表单的“资源 ID”。现在又是什么……12018……太棒了……填写所有必要的细节,编译、构建,然后试一试。看起来很可爱,所有正确的默认值都填入了两个文本框 - 但是,嘿!为什么浏览按钮在那里?为什么标签上的文字不是我设置的?
返回 InstallScript,检查资源 ID - 结果原来“SdShowDlgEdit2”的资源 ID 也为 12018。嗯,这解释得很好。愚蠢的是,InstallShield 允许您拥有两个具有相同 ID 的表单,但是无论如何......所以让我们回到我的“EnterDbDetails”表单并更改 ID......
...但是资源标识符属性是只读的! WTF?
所以现在我不能使用任何标准表单,也不能使用自定义表单,因为它不允许我更改资源 ID。
我被难住了。谁能解释一下你应该如何做这样的事情,这真的应该是世界上最简单的事情?
最佳答案
Creating New Custom Dialogs in InstallScript and InstallScript MSI Projects
引自网站(2015 年版):
要创建自定义对话框,您需要执行以下一般步骤:
关于installshield - 如何在 InstallShield 中制作自定义对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9517412/
现在,我有一个关于InstallShield INSTALLDIR和TARGETDIR的问题。 例如: 1-我创建一个名为“ MyTestprogram”的项目 2-我将此程序安装到计算机上,该计算机
我们的合作伙伴/经销商之一是设备制造商,他拥有我们应用程序的特定安装程序,该安装程序还为其硬件安装实用程序和驱动程序。到目前为止,我们已将驱动程序/实用程序放入 InstallShield 的“支持文
我正在尝试即时理解 InstallShield (2009)/InstallScript,因为我正在修改其他人的安装脚本。 安装过程中的一个对话框以前有一个文本框,要求一个 SQL Server 实例
你好, 我想通过在 InstallShield 中创建的任何对话框中单击按钮来打开网页。我认为它可以通过使用自定义操作来创建,但由于我是这个工具的新手,所以找不到实现此目的的确切方法。如果有人对此有想
我正在使用 InstallShield 2009 为 C# 程序创建安装包,该程序将部署在许多客户端站点上,每个站点都有数百个工作站。当我们发布补丁时,我根本无法去每个工作站手动运行升级,而用户与婆罗
我是 installshield 的新手,我有 installshield 2010,想用 sql server 2008 r2 express 为 vs2010 wpf 项目构建基本的 msi 我找
我需要创建一个在 WinXP 或更高版本上安装驱动程序的 InstallShield 12 项目。我如何使用 InstallShield 12 做到这一点? 最佳答案 我们通常做的是编写一个 DLL(
大家好,美好的一天! 问题 :我在 MSVC2010 中创建了一个基本的 InstallShield 项目,添加了一些文件和主要输出,然后按构建。项目正常编译:创建了 MSI、setup.exe、se
我即将开始一个新的 InstallShield 项目。项目类型有以下三种选择: 基本微星 安装脚本 InstallScript-MSI 各自的优缺点是什么?我应该选择哪一个? 最佳答案 基本 MSI
我已按照此处概述的说明进行操作,但它不能完全按照我的需要工作。: How to get InstallShield LE to uninstall the existing installation
我的解决方案中有 2 个项目。 一个是小型 win 表单项目, 另一个是 InstallShield Limited Edition 项目。 大部分情况下一切正常并且安装正确。桌面和开始菜单快捷方式也
是否有可能将目录(带有子目录)添加到 installshield 中的 SupportFiles 部分。我动态创建了用于支持安装的内容(文件列表不断更改)。 有没有其他方法可以将整个目录动态添加到安装
当我向我的安装程序添加依赖项时,我总是留下文件的硬编码路径。 根据 this blog ,解决此问题的唯一方法是使用 ISProjectFolder 变量手动更改 ISL 文件中的硬编码路径。这没有任
我们有两个安装屏蔽许可证 - 一个用于安装程序的开发人员,另一个用于 CI 服务器。 当另一个开发人员将项目 DLL 移动到另一个位置时,经常会出现这样的情况,从而破坏了安装程序。 我想知道是否有免费
我正在使用 InstallShield 2010 InstallScript 项目。我想创建一个文件夹的快捷方式。 我试过将目标设置为文件夹的路径。这会创建一个快捷方式,但它有一个 Target Ty
我想使用 InstallShield LE2013 创建安装包,如果用户在安装时选择相同的路径,则覆盖所有文件。怎么做? 我已经阅读了很多关于 ProductCode/Upgradecode 的答案,
我正在使用 InstallShield Express 创建一个安装项目。 我尝试在“系统更改”之前为卸载添加自定义操作。 自定义操作是一个 JavaScript,它将打开一个窗口,如下所示: win
我有一个非常基本的 InstallShield 安装程序。它将一堆瓷砖扔到 TARGETDIR。如果我将目标目录指定为几乎任何目录,这就是文件被删除的地方。 (例如,如果我指定 C:\temp,那就是
如何阻止 installshield 注册字体? 我有许多部署 Web 应用程序的 installshield 项目,它们都具有 GlyphIcons 和 FontAwesome 字体。 Instal
我正在使用 installshield2012 Professional 创建 msie。我将我的项目主要输出之一添加到 msie,其中的组件被标记为关键文件。如果我不将其标记为关键文件,我的项目中的
我是一名优秀的程序员,十分优秀!