Ошибка проекта развертывания Visual Studio при записи в реестр - PullRequest
2 голосов
/ 24 мая 2010

У меня есть настройка для приложения, которое недавно было преобразовано в проект framework 4.0 (не знаю, актуально ли это).Настройка должна выполнять запись в реестр (локальный компьютер), и до сих пор это всегда работало идеально, однако теперь не удается выполнить запись в реестр на чистой машине (под управлением Windows 7, 64-разрядная версия).

Настройка выполняетсяне терпит неудачу, не показывает предупреждение любого вида, однако это не пишет в реестр (я даже установил свойство AlwaysCreate в true на каждый ключ, на всякий случай), что, конечно, вызывает завершение приложенияпри запуске.

Что может быть причиной этого?Я никогда раньше не сталкивался с такой ошибкой.

Редактировать: Я пытался запустить программу установки от имени администратора, ничего не изменилось.

Ответы [ 2 ]

3 голосов
/ 24 мая 2010

Пишет в реестр нормально, просто не тот ключ.32-разрядные программы установки записывают в HKLM \ Software \ Wow6432Node, набор ключей реестра, которые видят 32-разрядные программы.Ваше приложение будет работать в 64-битном режиме, оно не будет перенаправлено так.Или заставьте ваше приложение работать в 32-битном режиме с настройкой Target Platform = x86 на вкладке Build.

0 голосов
/ 24 мая 2010

Оказывается, у проекта установки есть свойство TargetPlatform, которое было установлено на x86. Я изменил его на x64, и теперь он работает правильно.

Кто бы мог подумать, что это будет единственная вещь, затронутая неверной целевой платформой ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...