Звучит так, как будто у вас есть доступ к проблемной машине.
Если это внутрипроцессный объект (DLL или OCX ), я могу порекомендовать вам просто использовать ProcessExplorer вместо?
Do Start \ Run и введите http://live.sysinternals.com/procexp.exe
, чтобы запустить Process Explorer.Выделите ваше приложение в списке процессов, переключитесь в представление DLL, и на нижней панели отобразится путь и номер версии всех DLL и OCX, загруженных процессом.
Если это внепроцессный объект , я предлагаю заглянуть в реестр, чтобы увидеть, какая программа зарегистрирована в качестве сервера.
Сначала найдите CLSID, используя ProgID, чтобы найти запись в реестре .ProgID - это читаемая человеком строка, которую можно использовать с CreateObject, например Excel.Application
.CLSID - это 128-битное число в шестнадцатеричном виде в паре фигурных скобок.Посмотрите на запись реестра HKEY_LOCAL_MACHINE\SOFTWARE\Classes\{ProgID}\CLSID
Посмотрите на запись LocalServer32 под HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{ClsId}\
, где {ClsId}
- идентификатор класса объекта.Эта запись дает вам путь к exe, который предоставляет объект.