inno-setup相关内容

Inno Setup 中的输出重定向如何工作?

我在这里看到了这个问题:如何在 Inno Setup 中获取已执行程序的输出? 但我自己无法让它工作,注释掉的代码是我尝试使其工作,但我求助于 bat 文件,因为我无法使我的重定向工作.CacheInstanceName 和 CacheInstanceDir 是在别处定义的全局变量: function CheckCacheExists(): Integer;无功参数:字符串;缓冲区:字符串 ..
发布时间:2021-12-23 18:10:35 其他开发

使用 Inno Setup 安装 mod/plugin 时如何从注册表获取目标游戏/应用程序的安装路径?

我想为游戏的模组创建安装程序.我需要检测游戏的安装位置.我知道注册表中游戏的路径在哪里.但是游戏可以在另一个启动器中 - Steam,GOG.如何按顺序检测? 例如: 如果我有 Steam 版本,需要从 Steam 的注册表中检测安装路径 如果我有GOG版本需要从注册表中检测GOG的安装路径 如果我有两个版本(Steam 和 GOG),那么默认安装路径将是 Steam 版本 如果 ..
发布时间:2021-12-23 18:10:01 其他开发

在 Inno Setup 的 Code 部分下载后运行程序

如何运行我通过 Internet 下载的应用程序,在代码部分使用,并等待该应用程序完成运行.我已经使用 InnoTools 下载器下载了这两个文件,我想在第二个下载完成后运行该下载,或者 jdk-8u111-windows-x64.exe,然后继续安装. [代码]程序初始化向导();开始ITD_Init;ITD_AddFile('http://www-us.apache.org/dist/tom ..

用用户在 Inno Setup 中输入的输入替换已安装文本文件中的占位符

作为 Inno Setup 内置安装程序的一部分,我想将用户输入安装程序的文本字段输出到文本文件中. 到目前为止,我有以下内容: [代码]无功主服务器页面:TInputQueryWizardPage;主地址:字符串;程序初始化向导;开始PrimaryServerPage := CreateInputQueryPage(wpWelcome,'主服务器详细信息', '你的应用程序安装在哪里?' ..
发布时间:2021-12-23 18:08:58 其他开发

是否可以使用 Inno Setup 来“固定到开始菜单"?

我正在使用出色的 Inno Setup 安装程序,我注意到某些应用程序(通常来自 Microsoft)在安装时其启动图标在开始菜单(在 Windows 7 中)中已经非常明显(“固定?").我是完全依赖最近使用的算法来使开始菜单中的图标变大,还是有办法从安装程序中推广我的应用程序? 解决方案 可以固定程序,但不是正式的.基于 this thread(使用与@Mark Redman链接的文章 ..
发布时间:2021-12-23 18:08:52 其他开发

Inno Setup:扩展 Windows 默认应用程序列表

如何将我的应用程序列在 Windows 默认应用程序列表中? 我有一个特殊的基于 Java 的视频播放器应用程序,其中包含由 Inno Setup 创建的安装程序.我希望我的应用程序列在 Windows 10 上的可选视频播放器列表中(我也不知道如何使用旧的 Windows 版本). 解决方案 有关一般信息,请参阅: 在 Microsoft Docs 上注册用于默认程序的应用程 ..
发布时间:2021-12-23 18:03:28 Java开发

Inno Setup 为登录用户(不是管理员用户)创建注册表项

当我遇到这个问题时,我正在尝试使用 Inno setup 创建一个安装程序,其他所有东西都在安装,但是当前用户没有安装注册表项,我在 中找不到它HKEY_CURRENT_USER.但是当我尝试以管理员身份运行 Regedit 时,注册表安装在那里.我已打开 UAC 并使用管理员帐户进行验证以运行安装,为什么会发生这种情况? 这是我的Registry部分 [注册表]根:HKCU;子项:软件; ..
发布时间:2021-12-23 18:03:24 其他开发

使 Inno Setup Installer 向主安装程序报告其安装进度状态

我目前有两个 Inno Setup 安装程序.我需要其中一个将其作为子安装程序的状态报告给另一个安装程序,即使它使用 VERYSILENT 命令运行. 我需要这个来根据子安装程序的安装进度在我的主安装程序中显示一个进度条,因为我不想要任何无限(字幕)进度条. 我还了解了 Delphi 中的 IPC 机制.如何将这种通信能力(如泵)添加到 Inno Setup 源代码中?有什么入门技巧吗 ..
发布时间:2021-12-23 18:01:40 其他开发

Inno Setup 总是安装到管理员的 AppData 目录中

我想将我的应用程序存储在当前用户的 AppData 目录中,以避免在自动更新我们的应用程序时(当它存储在程序文件中时)出现权限问题.我们不会让用户选择安装应用程序的位置.我们收到来自非管理员用户的投诉,称安装程序将应用程序存储在管理员的 AppData 目录中(当然在 UAC 之后),而不是当前用户的 AppData 目录,这会阻止应用在未来运行. 首先,我有 DefaultDirName= ..
发布时间:2021-12-23 17:57:50 其他开发

Inno Setup:在继续我的安装之前安装其他安装程序并运行它

这是我目前代码的 [Files] 部分: [文件]来源:“other_installer.exe";目标目录:“{应用}"来源:“myprogram.exe";目标目录:“{应用}"来源:“data.dat";目标目录:“{应用}"来源:“otherdata.dat";目标目录:“{应用}" 我的程序依赖于另一个程序来运行.我已经在我的安装程序中包含了这个程序的安装程序(“other_inst ..
发布时间:2021-12-23 17:56:22 其他开发

在 Inno Setup 中执行 UninstallString

我的要求是在安装和卸载以前的版本之前检查以前安装的 SQL native Client 11.我已经能够检查以前的安装没有问题,但是,我无法卸载相同的. 我使用了如何检测旧安装和要约删除? 在运行期间,我收到以下错误 异常:内部错误:未知常量“A22EED3F-6DB6-4987-8023-6C6B7030E554". (其中常量是本机客户端的 GUID)在该行执行期间 ..

Inno Setup - 检查目标中是否存在文件,否则不会中止安装

我需要我的安装程序检查目标位置中是否存在文件,如果不存在,则安装中止.我的项目是一个更新补丁,所以如果应用程序的主 exe 不在目标中,我希望安装程序避免安装更新文件.我该怎么做? 谁能给出一个通过 Windows 注册表检查文件版本的代码示例? [文件]源 C:\filename.exe;目标目录 {app};标志:忽略版本;安装前:CheckForFile;[代码]过程 CheckFo ..
发布时间:2021-12-23 17:53:14 其他开发

Inno Setup:如何操作运行部分的进度条?

类似于这个问题: 如何在 Inno Setup 安装脚本的 [Run] 部分设置进度条值? 当 Inno Setup 进入 [Run] 部分时,进度条显示为 100% 并停在该位置. 我在这个 Run 部分安装了许多文件,我希望在安装每个程序时重新启动进度条并控制它. 状态消息很容易更改(StatusMsg),但我遗漏了一些进度.请你们帮帮我好吗? 示例: [运行]文件 ..
发布时间:2021-12-23 17:45:58 其他开发

Inno Setup - 签名失败,“签名工具失败,退出代码为 0x1";

我有 Inno Setup 脚本,我需要在其中使用 SignTool=signtool,该脚本已正确配置并在过去工作. 但是当我尝试编译时失败,出现以下错误: 签名工具失败,退出代码为 0x1. 解决方案 您没有向我们提供任何可用于调试您的问题的信息. 因此,我发布了使用“签名工具"调试问题的通用说明. 尝试命令行编译器(ISCC.exe).它将在输出中保留完整的 ..

从以管理员身份运行的 Inno Setup 安装程序为当前登录的用户安装应用程序

关于创建 (Inno Setup) 安装程序的一个非常常见的问题是从以提升的/管理员权限运行的安装程序访问/修改特定用户(当前登录的用户)的配置文件. 这样做有很多缺点并且容易出错. 所有现有答案都涵盖了部分问题(注册表、文件、桌面图标等).这个问题的目的是收集解决全球问题的答案,使用所有可能的方法. 解决方案 Inno Setup 没有任何内置机制来从以提升/管理员权限运行的 ..
发布时间:2021-12-23 17:42:02 其他开发

如何在 InnoSetup 向导页面中读取和设置复选框的值?

我在 InnoSetup 脚本的“附加任务"页面添加了一个复选框 [任务]名称:“开始菜单条目";描述:“在 Windows 启动时启动我的应用程序";组描述:“Windows 启动";最小版本:4,4; 我想在 wpSelectTasks 页面显示时初始化这个复选框,并在点击 Next 按钮时读取值.我不知道如何访问复选框“已检查"值. function NextButtonClick(C ..
发布时间:2021-12-23 08:30:43 其他开发

如何使用 Inno Setup 获取本地 IP 地址

如何使用 Inno Setup 获取用户的本地 IP 地址? 我考虑过使用Win32 API GetIpAddrTable,但不清楚如何进行调整. 有人有其他办法吗?或者知道怎么做? 解决方案 这取决于你想要 IPv4 地址还是 IPv6 地址.但是既然你提到了 GetIpAddrTable 并且它只返回 IPv4 地址,我怀疑这就是你想要的. 每台机器可以有多个本地 I ..
发布时间:2021-12-13 23:45:42 其他开发

Delphi/Pascal 的正确结构语法 if then begin end and ;

距我上次不得不用 Pascal 编写已经大约 20 年了.我似乎无法在使用 begin 和 end 嵌套 if then 块的地方正确使用语言的结构元素.例如,这让我得到一个编译器错误 "Identifier Expected". procedure InitializeWizard;开始Log('初始化向导');如果 IsAdminLoggedOn 然后开始设置用户组();SomeOtherP ..
发布时间:2021-12-13 22:50:32 其他开发

在 Inno Setup 编译器中运行 [Code] 或 PowerShell 脚本

有没有办法在生成安装可执行文件之前在 Inno Setup 编译器中运行 [Code] 过程或 PowerShell 脚本? 解决方案 如果您解释运行代码的目的,您可能会得到更好的答案.无论如何... 一种方法是在命令行上编译脚本批处理文件: powershell -file precompile.ps1ISCC.exe setup.isspowershell -file post ..
发布时间:2021-12-08 08:35:31 其他开发