Здравствуйте Vi2, Вы писали:
Vi2>Здравствуйте AsM2, Вы писали:
AM>>Происходит ошибка при компиляции — COM компилируется в VB 6.0 sp5..., а в последний момент отваливается с ошибкой линкера:
Vi2>По-видимому, твоя DLL используется каким-то приложением или как сервер объекта или как TLB (библиотека типов) объекта. Нужно найти такое приложение и заставить его отпустить DLL. Это уже зависит от того, где используется твой объект.
a) Разрегистрируем DLL
b) Проверяем в OLE View — точно разрегестрировали, больше записей нет
c) Перезагружаемся
Сразу после этого пытаюсь откомпилировать — тоже самое :(
Место на диске есть, на файл full control для everyone.
AM>>А есть еще один глюк — обратный — еще на двух проектах — откомпилированные DLL (также ActiveX DLL, бинарная совместимость) не регистрируются и не разрегистрируются через regsvr32 — выводится ошибка:
Vi2>Если имеешь ввиду URL.dll из WinXXX\System32 директория, то всё правильно — у неё нет этих функций. А если имеешь ввиду свою, то это нескромно и лучше переименовать её из-за коллизий с Microsoft-овской конкуренткой.
Dll моя. Стал скромнее — dll переименовал — все заработало!
Действительно, так и есть, при регистрации я не указывал абсолютный путь и файл брался из системной директории, т.е. не мой. VB после компиляции при регестрации, как видно, использут абсолютный путь.