问题标签 [installshield-2012]

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 回答
1413 浏览

registry - 我的自定义注册表项及其值在哪里?

我是 IntallShield 的新手,并扩展了一个相当大的 InstallScript 项目以添加新的自定义注册表项 ( HKEY_LOCAL_MACHINE\SOFTWARE\Company\Product\Foo) 和有关首次安装功能的值。

基于项目的现有代码添加其他自定义注册表项和值,我添加了一个专用函数,用于调用RegDBCreateKeyExRegDBSetKeyValueEx在适当的情况下......

...并在OnFirstUIBefore.

我通过我的日志确认了OnFirstUIBefore在第一次安装时执行的日志,就像我期望的那样;并且我的日志记录表明HKEY_LOCAL_MACHINE\SOFTWARE\Company\Product\Foo创建了新的自定义注册表项 ( ) 及其值;但我没有在注册表中看到新的自定义键及其值,就像我在第一次安装后看到现有的自定义键和值一样。

我的新自定义注册表项在哪里?

0 投票
1 回答
340 浏览

.net-4.0 - 调用 .NET 方法时安装程序退出且没有明显错误

我正在扩展现有的 InstallScript 项目,并且需要在针对 .NET 4.0 的程序集中调用一个方法。

该项目已经在同一个程序集中的另一个类中调用了一个方法:所以我知道这很有效。

反映我对现有 .NET 方法调用所看到的内容,这是我目前所拥有的内容:

SomeFunction()我构建的设置中执行时,我看到以下输出...

调用 DotNetCoCreateObject("SomeAssembly.dll", "SomeAssembly.SomeClass", "")...

调用 oSomeClass.SomeMethod()...

...,但随后安装程序立即退出,没有任何明显的错误。没有任何迹象表明出了什么问题,这使故障排除变得令人沮丧。寻找可能的原因,到目前为止我什么也没找到。

为什么会oSomeClass.SomeMethod()导致安装程序立即退出而没有明显错误?

编辑:

根据@MichaelUrman 的评论,要求提供更多关于现有类 ( OrigClass) 和新类 ( ) 之间的区别的详细信息SomeClass

  • 两个类都是public sealed.
  • 这两个类都有一个隐式默认构造函数——没有显式构造函数。
  • 两种方法 (OrigMethodSomeMethod) 都是public.
  • 类或方法都没有标记ComVisible属性;但是他们的程序集(SomeAssembly)中有[assembly: ComVisible(true)]它的AssemblyInfo.cs

Existing.rul(成功集成SomeAssembly.OrigClass.OrigMethod)和New.rul(未成功集成)的区别SomeAssembly.SomeClass.SomeMethod如下(使用补丁文件):

OrigFunctionSomeFunction使用try- catch-endcatch分别确保oOrigClassoSomeClass设置为有效参考。InstallScript 语言参考的DotNetCoCreateObject 文档解释说“如果无法创建对象,[the] 函数将引发异常”。

0 投票
1 回答
675 浏览

installshield - 在 installshield 中有条件地从两个不同的特性中选择并安装一个特性的文件

我有三个功能 F1、F2 和 F3。用户只能选择功能 F1 或 F2 之一。F3 是默认功能。文件分布在这两个功能 F1 和 F2 之间。如果用户选择 F1,则应安装 F1 的文件。如果用户选择 F2,则应安装 F2 的文件。不确定 installshield 是否有这个选项。我该如何继续?

0 投票
1 回答
250 浏览

visual-studio-2012 - InstallShield Limited Edition 对话框最小化

我正在使用 InstallShield Limited Edition (2012 Spring) 和 Visual Studio 2012 为我的软件构建设置/安装程序。我有三个不同的设置项目。执行时,其中两个有一个令人讨厌的习惯,即最小化显示“安装欢迎”对话框。第一个对话框“准备安装”正常显示 - 但当它关闭时,最终用户必须在任务栏中查看最小化的“欢迎安装”对话框。

第三个安装项目不这样做,InstallShield 对话框在安装完成之前都保持可见。

项目之间的区别在于,最小化自身的两个项目具有指定的先决条件(.Net 4.0),而始终可见的项目没有先决条件。我所描述的行为发生在先决条件 .Net 4.0 已经存在时,因此无需采取任何措施。

我找不到可以控制(或让我覆盖它)的 InstallShield 对话框的任何设置,当然,限量版限制了我可以做的事情。除了指定的先决条件外,我在项目设置中找不到任何其他差异。

有谁知道我怎样才能让所有 InstallShield LE 对话框清晰可见?

0 投票
0 回答
2416 浏览

installation - InstallShield - 使用 XCopyFile 将文件夹从网络复制到本地目录

我有一个关于 InstallShield 的问题。我正在尝试将文件从网络文件夹复制到我的本地目录。如果源目录和目标目录都在本地机器上,我创建了基本的 MSI 项目并创建了分叉的脚本,但如果源是网络位置,它根本不起作用。谁能帮助我。我设置了运行脚本的自定义操作在 InstallFinalize 之后运行。

这是我脚本中的代码,第一个 SDIR 用于本地,第二个 SDIR 是网络地址

0 投票
2 回答
770 浏览

windows-installer - 从添加或删除程序启动时不显示先决条件对话框

我有一个带有先决条件的 Installshield Basic MSI 项目。一旦用户尝试运行 setup.exe 文件,它就会显示先决条件对话框,并且用户能够按预期成功安装先决条件。

成功安装应用程序后,用户删除先决条件之一。

稍后,用户尝试通过双击 setup.exe 来修改安装。在继续修改之前,安装会按预期显示先决条件对话框。

但是,如果用户尝试从添加/删除程序(使用更改选项)修改安装,则安装不会显示先决条件对话框。

我的问题如下: 1.为什么仅当用户单击 setup.exe 而不是从添加/删除程序时才显示先决条件对话框 2.当用户尝试从添加/删除程序和其中之一进行修改时,预期的行为是什么缺少先决条件。

0 投票
1 回答
1280 浏览

installshield - 即使在 installshield 的正在使用的文件对话框中选择不这样做后,如何禁用额外的窗口以重新启动系统

我正在使用 installshield 对现有的 exe 文件进行升级。安装更新时,在正在使用的文件对话框中,我选择自动关闭并重新启动应用程序的选项,而不是重新启动系统的其他选项。但是我得到一个额外的窗口,告诉我在安装完成后再次重新启动系统。如何禁用此窗口?请帮忙 :)

0 投票
1 回答
161 浏览

installshield-2012 - 如何在 InstallShield 中为差异版本选择特定文件?

我目前正在使用 InstallShield 2012 Spring Edition。

我们有一个产品有几个月前发布的某个版本(比如 1.0.1)

我们现在要为其创建一个热修复程序(例如 1.0.1.1),并且我们希望媒体包含自上次发布以来更改的特定文件。

我创建了一个新版本并将其标记为“差异媒体”,并在“对象差异”中选择了“如果更改则包含”选项。然后我执行了发布向导并选择了保存新文件的特定功能。

问题是还有一些其他文件也发生了变化,我们不想包含在此版本中,但 InstallShield 将它们识别为自上次版本以来已更改的文件并将它们添加到媒体中。

我们能否以某种方式选择特定文件以包含在更新版本中?

0 投票
0 回答
138 浏览

visual-studio-2012 - 将 DTF 与 Installshield 和主输出一起使用

在主要升级期间,我使用 InstallerClasses 的 InstallShield 项目存在问题。安装程序正在调用旧版本的 InstallerClass 或只是抛出错误 1001。

我决定使用 DTF 技术,但我无法将生成的 *.CA.dll 文件链接到“DLL Filekey”属性。我将项目链接为“主要输出”。

知道如何使用 DTF 自定义操作项目并将其链接到 Basic MSI Installshield 2012 项目吗?我想避免直接引用 CA 文件,因为我正在创建自动构建。

非常感谢,

马立克

0 投票
1 回答
81 浏览

windows-installer - 如何使用命令行将新的自动升级项目添加到 installscript MSI 项目

我正在使用 InstallShield 2012 创建 installscript MSI 项目来为我的产品创建补丁安装程序。我计划自动化我的产品构建过程以使用 ISCMBuild.exe 创建补丁。

在创建新补丁时,我想在升级视图下添加所有先前设置的列表,以支持先前补丁级别的升级方案。

每次创建新补丁时,我都必须在升级部分添加以前的补丁设置文件详细信息。现在,我想知道是否可以从命令行在升级视图中添加此条目。