2010-05-24 106 views
2

我有一个最近被转换为框架4.0项目的应用程序的设置(不知道它是否相关)。安装程序必须写入注册表(本地计算机),直到现在,它一直运行良好,但是现在它无法在干净的机器(运行Windows 7,64位)上写入注册表。写入注册表时,Visual Studio部署项目出错

的设置不会失败,不显示任何形式的警告,但它不写入注册表(我甚至AlwaysCreate属性设置为true 关键,以防万一),这当然会导致应用程序在启动时终止。

这可能是什么原因造成的?我从来没有遇到过这样的错误。

编辑:我试过以管理员身份运行安装程序,没有任何改变。

回答

3

它写入注册表还好,只是错了钥匙。 32位安装程序写入HKLM \ Software \ Wow6432Node,这是32位程序看到的一组注册表项。你的应用程序将以64位模式运行,它不会像这样重定向。

您需要在安装项目中设置目标平台。或者强制您的应用程序在“生成”选项卡中使用Target Platform = x86设置以32位模式运行。

0

原来的设置项目有一个属性TargetPlatform,它被设置为x86。我已将其更改为x64,现在它可以正常工作。

谁曾想到,这将是受了错误的目标平台的唯一的事情...

相关问题