Я установил приложение для рабочего стола Windows. Установщик - Inno Setup, и он поместил мой лицензионный ключ для приложения в узел wow6432. Но когда я запускаю приложение, оно говорит мне, что не может найти лицензию. Могу ли я сделать что-нибудь, чтобы приложение нашло лицензию?
1 ответ
3
Вы ничего не можете сделать, чтобы приложение работало.
Что должно произойти, так это то, что разработчик приложения, если он знает, что лицензия всегда будет в 32-битном реестре, должен изменить свой вызов RegOpenKeyEx из
RegOpenKeyEx(HKEY_CURRENT_USER, ...);
в
RegOpenKeyEx(HKEY_CURRENT_USER | KEY_WOW64_32KEY, ...);
Или 32-разрядный установщик должен поместить информацию о лицензии в 64-разрядный реестр, изменив:
RegOpenKeyEx(HEKY_CURRENT_USER, ...)
в
RegOpenKeyEx(HKEY_CURRENT_USER | KEY_WOW64_64KEY, ...);
Поскольку ни одна из этих вещей не находится под вашим контролем; Вы должны просто скопировать информацию о лицензии из 32-битного реестра в 64-битный реестр самостоятельно, используя RegEdit.