Inno Setup似乎没有写入64位计算机上的注册表 [英] Inno Setup does not seem to write to the registry on a 64-bit machine

查看:290
本文介绍了Inno Setup似乎没有写入64位计算机上的注册表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个非常简单的Inno Setup脚本,其中包含以下[Registry]部分:

I have a very simple Inno Setup script containing this [Registry] section:

[Registry]
Root: HKLM; Subkey: SOFTWARE; Flags: createvalueifdoesntexist; ValueType: string; ValueName: ABC; ValueData: abc

但是,当我检查HKLM\SOFTWARE子项时,没有添加任何值.

However, when I check the HKLM\SOFTWARE subkey, there is no value added.

我在HKLM\SOFTWARE和Pascal脚本下尝试了不同的子项,但是Inno Setup只是拒绝创建新的子项或值.

I tried different subkeys under the HKLM\SOFTWARE and Pascal scripting, but Inno Setup simply refuses to create a new subkey or value.

我正在运行64位Windows 7,UAC已关闭.

I am running a 64bit Windows 7, the UAC is turned off.

推荐答案

最终解决了它.

Inno Setup在64位计算机上以32位运行,因此HKLM对应于HKLM \ Wow6432Node.

Inno Setup was running as 32bit on a 64bit machine, hence HKLM correspond to HKLM\Wow6432Node.

在这种情况下,我需要添加对IsWin64的检查并使用HKLM64.

I need to add check for IsWin64 and use HKLM64 in that case.

这篇关于Inno Setup似乎没有写入64位计算机上的注册表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆