У меня есть программа установки, которая записывается в HKLM\Software\DroidExplorer\InstallPath
. На любой машине x86 она прекрасно записывается в ожидаемое место, а на Windows XP x64 и Windows 7 x64 также записывается в ожидаемое местоположение, которое на самом деле HKLM\Software\Wow6432Node\DroidExplorer\InstallPath
.Почему установщик x86 WiX в Windows Vista x64 не записывает ключи в Wow6432Node в реестр?
Позже во время установки мой bootstrapper, который также является x86, пытается прочитать значение. На всех машинах Windows x86 это успешно, и в Windows XP x64 и Windows 7 x64, но Windows Vista x64 не может найти ключ. Если я смотрю в реестре, он фактически не записывает его в Wow6432Node на Windows Vista; он пишет это Software\DroidExplorer\InstallPath
.
Если я не насильно сказать установщику писать Wow6432Node, он записывает значение Software\DroidExplorer\InstallPath
, но Загрузчик все еще пытается смотреть в Wow6432Node из-за registry reflection. Это относится ко всем системам x64.
Почему Windows Vista x64 у меня только одна проблема? Есть ли способ обойти это?
Я просто хочу добавить редактирование, которое все еще открыто. Ни один из приведенных ниже предложений еще не решил эту проблему.
У вас есть 'Win64 =" no "' на вашем '' теге? Если нет, попробуйте установить его. –
даже не позволяет мне скомпилировать, если я установил это ... Я действительно надеялся, что это было легко. Ошибка, которую я получаю: Ошибка LGHT0204: ICE80: Этот 32BitComponent InstallDirectoryRegister использует 64BitDirectory INSTALLDIR –
Если вы изменили компонент на 32 бит, вы также должны изменить каталог установки на 32 бит. Вот что означает сообщение об ошибке. –