installation - Inno Setup 在 Windows x64 上设置命名管道

标签 installation registry inno-setup setup-project

我在使用 Inno Setup 进行安装时遇到问题。我需要安装 SQL 2012 Express x64 版本,但是当它完成安装时,想法已经是 100% 配置环境,或者在我的情况下使用命名管道。

必须通过记录输入命名管道,在此之前使用以下两行:

[注册表]
x64 - 根:HKLM;子项:SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo;值类型:字符串;值名称:DevServer; ValueData:DBNMPNTW,\\.\PIPE\MSSQL$SQL2012EXPRESS\sql\query

x86(有效) - 根:HKLM;子项:SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo;值类型:字符串;值名称:DevServer; ValueData:DBNMPNTW,\\.\PIPE\MSSQL$SQL2012EXPRESS\sql\query

对于 x86 版本,它可以 100% 正确运行。至于x64版本不起作用,我注意到应该在“regedit”中创建的路径不存在,但如果通过配置管理器手动创建,一切正常。

我还测试了在安装过程中创建一个批处理来运行 .reg 文件,但也没有受到影响。

记住我的问题仅适用于 x64 版本。

最佳答案

Inno Setup 安装程序是 32 位应用程序,因此默认情况下SOFTWARE 会重定向到 SOFTWARE\Wow6432Node

您必须使用Root: HKLM64 来显式避免重定向。

您可能还需要添加Check: IsWin64 以确保该条目不会在 32 位安装上处理,因为这会导致错误。

[Registry]
Root: HKLM64; Subkey: SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo; ValueType: string; \
    ValueName: DevServer; ValueData: DBNMPNTW,\\.\PIPE\MSSQL$SQL2012EXPRESS\sql\query; \
    Check: IsWin64

参见[Registry] section documentation .


或者use 64-bit install mode .

关于installation - Inno Setup 在 Windows x64 上设置命名管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33802171/

相关文章:

qt - 在 Mac OS X Lion 上安装 Qt SDK 的问题

css - 如何在xampp中安装下载的wordpress主题

installation - 尝试安装 Quartz.net,运行服务器时出现问题

c++ - 是否有任何任务栏API可以立即应用注册表更改?

installation - Inno Setup - 基于任务或组件的条件下载

wix - 自动更新 wix 安装程序中的版本信息

c# - 我如何请求提升注册管理机构对 HKLM 的访问权限?

windows - DigitalProductId 和 InstallDate 会改变吗?

inno-setup - Inno Setup "return"like command/construct in Code

inno-setup - 使用InnoIDE写入AppData目录吗?