У меня есть проект установщика Windows, который устанавливает некоторое программное обеспечение (winform, service, mce addin). Во время установки мне нужно найти на компьютере ключ реестра. Это выполняется с помощью «Условие запуска» -> «Поиск в реестре» (проект развертывания).
Я правильно заполнил все свойства и проверил, нет ли на самом деле значения, которое можно найти.
Проблема заключается в том, что «Поиск в реестре» выполняет поиск в части реестра x86 (HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ ...), хотя моя система представляет собой x64, а настройка развертывания также установлена на x64.
Кто-нибудь знает, как заставить "Поиск по реестру" искать в реестре x64? Или знаете об обходном пути?
Странная вещь в этом - то, что параметр Registry в настройках развертывания записывает данные в правильный реестр (x64). Моя идея состоит в том, что программа «Поиск в реестре» разработана только для архитектуры x86 и поэтому не может прочитать правильный реестр.
Я нашел эту статью от Microsoft, поэтому кажется, что они знают об этой проблеме.
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=110105&wa=wsignin1.0#details
Моя система:
Windows 7 64bit
Visual Studio 2008