Регистрация COM-DLL
Добрых суток.
Собственно система Win 8.1х64. Delphi 10.3
Создаем простейший COM в DLL с одним интерфейсом, в котором единственная функция. регистрируем при помощи regsvr32. Сообщает что все ок, сервер зареген. Пытаюсь из программы получить доступ к этому серверу, в ответ прилетает - Класс не зарегистрирован, ClassID: Такой-то. Сканирую реестр, класс там присутствует, путь к файлу тоже и в root и в current_user. Из этой же проги доступ к другим серверам есть. Но, правда, написанных ранее на D2007.
Вот хз. Все время создавал эти COM-объекты и ни разу такого не попадалось мне.
Я переезжаю с D2007 на D10.3. проблему со строками вроде понимаю и решил и да и не должна она отражаться на данной проблеме никак.
Есть соображения, что проверить, где копать?
UPD: проверил на WIN7x64 все ок. На Win 8.1х64 все так же плохо. Что не так?
UPD2: Разобрался. По всей видимости глюк был в процессе регистрации класса, после перерегистрации (unregister/register) больше не повторялся.
Встает вопрос - как такое могло случиться? Ведь и GUID класса и путь к DLL, содержащей COM-объект, были прописаны в реестре. Я специально переносил DLL в другую папку и регил заново. В реестре менялся путь к ней.
|