【问题标题】:Inno Setup Setting named pipe on Windows x64Windows x64 上的 Inno Setup 设置命名管道
【发布时间】:2015-11-19 11:06:31
【问题描述】:

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

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

[注册表]
x64 - Root: HKLM; Subkey: SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo; ValueType: string; ValueName: DevServer; ValueData: DBNMPNTW,\\.\PIPE\MSSQL$SQL2012EXPRESS\sql\query

x86(有效) - Root: HKLM; Subkey: SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo; ValueType: string; ValueName: DevServer; ValueData: DBNMPNTW,\\.\PIPE\MSSQL$SQL2012EXPRESS\sql\query

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

我还测试了创建批处理以在安装过程中运行 .reg 文件并且也没有受到影响。

记住我的问题只针对x64版本。

【问题讨论】:

    标签: installation registry inno-setup setup-project


    【解决方案1】:

    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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-15
      • 1970-01-01
      • 2011-09-23
      • 1970-01-01
      相关资源
      最近更新 更多