У меня есть 32 ком библиотека и хотел бы использовать его функциональность с помощью приложения на 64 бита, я «ве искал в интернете и сумел получить этот workaroundс использованием ком 32 бит библиотека на 64 бит приложения
- Найдите свой GUID объекта COM в поле
HKey_Classes_Root\Wow6432Node\CLSID\[GUID]
- После того, как вы разместили, добавьте новое значение
REG_SZ (string)
. Имя должно быть AppID и данные должны быть такими же COM объект GUID вы только искали - Добавить новый ключ под
HKey_Classes_Root\Wow6432Node\AppID\
- Новый ключ должен называться так же, как объект ком GUID
- Под новым ключом вы просто добавили, добавили новое значение
REG_SZ (string)
, и назовите его DllSurrogate. Оставьте значение пустой - Создайте новый ключ под
HKey_Local_Machine\Software\Classes\AppID\
, но он не работает на Windows 7 64 бит, основная проблема, когда я делаю шаг 6 я нашел ключ уже существует, любой орган знает почему? или как я могу его преодолеть?
документация здесь очень кратко
Шаг 3 должен создать ключ, видимый для 32-разрядных программ. Более точное имя ключа - HKLM \ Software \ Wow6432Node \ Classes \ AppID. Шаг 6 должен создать ключ, видимый для 64-битных программ, тот же путь минус часть Wow6432Node.Что-то не так с вашей машиной, если ключ, созданный на шаге 3, виден на пути в шаге 6. Не пропустите часть Wow6432Node. –
Вы можете решить проблему, потому что я использовал или использовал 32 бита или 64 бит regedit? может возникнуть проблема в том, что я зарегистрировал библиотеку с 32 или 64 regsrv32.exe? –
Рассматривали ли вы перестройку библиотеки как 64? (Или, я полагаю, лучший вопрос был бы, у вас есть доступ к источнику библиотеки?) –