Inno Setup - 使用通配符注册表项设置 DefaultDir?

2023-12-14

我最近开始使用 Inno Setup 尝试创建一个简单的 .exe 安装程序来进行游戏修改。

我的安装程序大部分工作正常,但目前还有些基础。我真正希望安装程序做的是自动找到该模组设计的游戏的安装目录(战争黎明 - 黑暗十字军),这样用户就不需要手动浏览它。

我读过 Inno 安装程序可以根据注册表项设置 DefaultDir。然而,虽然“目标”游戏确实创建了一个包含其安装目录的注册表项,但该游戏可以通过数字方式(通过 Steam)或物理方式购买,并且它会根据购买的格式创建不同的注册表项。我的 mod 适用于任一格式,但如果有多个可能的注册表项格式,我不知道如何设置 DefaultDir。

是否有某种“通配符”功能可以从注册表项返回游戏的安装目录,而无需输入准确的完整注册表项值(即某种注册表通配符)?或者搜索它可能具有的两个可能值,然后如果没有找到则默认为 {src} ?


除了使用[Code]正如其他地方所回答的,您还可以嵌套注册表常量:

DefaultDirName={reg:HKLM,Software\Vendor1\Application,InstallPath|{reg:HKLM,Software\Vendor2\Application,InstallPath|{pf}\DefaultInstallPath}}

这将使用 Vendor1 的路径(如果存在);如果失败,它将尝试 Vendor2 的路径,并且只有当它找不到其中任何一个时,它才会回退到某个默认值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Inno Setup - 使用通配符注册表项设置 DefaultDir? 的相关文章

随机推荐

  • 正则表达式帮助 - python - 从 css 中提取所有图像 url

    我正在尝试从 css 文件中提取所有图像 jpg png gif uri 示例 CSS blockpricecont width 660px height 75px background url images postBack jpg re
  • 使用画布nodeJS模糊图像

    这好像是ctx filter blur amount 不起作用 这是我的代码 const body await request get url const data await Canvas loadImage body ctx filte
  • 在c#中通过位掩码存储多个值

    我试图通过位掩码将四个独立的 5 位值 0 31 存储在 32 位 int 内 但无法正确设置这些值 并从用于存储的掩码 int 中获取各个值 谁能帮我这个 Edit 抱歉外部链接 这里有一些 JavaScript 演示了我想要实现的目标
  • 如何在 ASP.NET Core 6 中将字段值从 true 切换为 false,反之亦然

    我正在使用 ASP NET Core 6 和 mongodb 作为数据库构建一个 API 我正在尝试设置某个字段以从 true 切换到 false 反之亦然 如果场isactive True 然后我必须将其更新为 false 反之亦然 我已
  • 解析apache日志文件

    我刚刚开始学习 Python 想读取 Apache 日志文件并将每行的部分内容放入不同的列表中 文件中的行 172 16 0 3 25 Sep 2002 14 04 19 0200 GET HTTP 1 1 401 Mozilla 5 0
  • Cassandra:插入 timeuuid 错误

    我有下表 create table test userId varchar notifId timeuuid notification varchar time bigint read boolean primary key userId
  • 带有 FileSystemWatcher 和 Timer 的 Windows 服务 - 确保所有内容都得到处理

    我创建了一个 C Windows 服务应用程序来启动FileSystemWatcher监视目录中文件的创建 找到文件后 我实例化一个自定义类 该类解析文件 CSV 并使用其内容调用 Web 服务 该服务在某种程度上是异步的 并返回一个唯一的
  • 使用 SUDS 时添加 xsi:type 和信封命名空间

    我需要与 SOAP 服务交互 但这样做遇到了很多麻烦 非常感谢对此的任何指示 原来的错误信息是 org apache axis2 databinding ADBException Any type element type has not
  • MySQL Select Query 生成动态列结果

    我需要编写一个动态返回列的查询 例如 我有一个包含列的表 tblTest Id Name Type Amount 1 Receipt Cash 100 2 Receipt Card 200 3 Receipt Cheque 250 4 Re
  • 如何将日期时间列四舍五入到最近的一刻钟

    我已将数据文件加载到 Python pandas 数据框中 我有一个格式的日期时间列2015 07 18 13 53 33 280 我需要做的是创建一个新列 将其四舍五入到最接近的一刻钟 因此 上面的日期将四舍五入为2015 07 18 1
  • Gradle应用程序插件:修改workingDir属性

    我只是想修改程序运行的目录 通常 它是从项目根目录运行的 这让我有点恼火 因为测试程序可能非常烦人 因为我的程序在运行时生成文件和文件夹 A JavaExec任务有一个属性称为JavaExec workingDir 这正是我想要修改为我选择
  • 使用数组进行字符串插值

    我正在尝试使用 php 创建链接 但遇到了一些困难 有人可以帮我弄这个吗 我希望链接转到 yourteam php 标题为变量 row User ID 的内容 echo tr td a href row User ID a td td b
  • 水平冻结一表列

    我有一个活动 其中我实现了一个表格视图 表格视图有标题和正文 表格可以水平和垂直滚动 这是活动源代码 public class ReportListActivity extends Activity TableLayout report t
  • 使用来自 PHP 网页的输入参数运行 .exe

    我目前正在尝试获取一个可执行文件以在 PHP 网页中运行 当前使用exec 从命令行运行时 该程序需要两个参数 我不确定使用 PHP 运行它的最佳方法是什么 特别是 可以使用以下语法从命令行运行 exe my program exe inp
  • 在 WooCommerce 我的帐户订单列表上显示产品缩略图

    我正在尝试在 WooCommerce 我的帐户 gt 订单列表中的订单号旁边显示产品缩略图 Below is the screenshot of the order 我必须使用什么钩子来显示图像 I tried 将产品图片添加到 Wooco
  • 在 PHP 中删除 JSON 数组元素,然后重新编码为 JSON

    function deleteNews selected file file get contents news json true data json decode file true unset file foreach selecte
  • 取消 jquery 可拖动对象或重置

    我想加载一个可以拖动到地图 div 上的对象页面 但想要有一个清除 撤消按钮 这可以用 jquery 实现吗 你可以在上一个问题中看到代码 jQuery UI droppables 更改删除的图像 这可以通过简单的调用来实现 animate
  • 使用 gradle/clojuresq 构建 clojure

    我正在尝试使用 gradle Clojuresque 构建 clojure 代码 运行它并获取 uberjar 我使用来自的提示http dev clojure org display doc Getting Started with Gr
  • 使用php发送whatsapp消息

    你好 我想使用 php 发送 Whatsapp 消息 我运行这段代码
  • Inno Setup - 使用通配符注册表项设置 DefaultDir?

    我最近开始使用 Inno Setup 尝试创建一个简单的 exe 安装程序来进行游戏修改 我的安装程序大部分工作正常 但目前还有些基础 我真正希望安装程序做的是自动找到该模组设计的游戏的安装目录 战争黎明 黑暗十字军 这样用户就不需要手动浏