Текущий архив: 2006.10.29;
Скачать: CL | DM;
Вниз
COM Найти похожие ветки
← →
moccom (2006-10-07 19:14) [0]Знаю, что глупость буду спрашивать и знаю что абсолютно ничего не понимаю в COM технологии. Но, хочется услышать ответ на один вопрос: есть некая com библиотека (dll), и есть приложение, которое использует эту com библиотеку; реально ли достать: что, как, какие методы используются приложением для работы с библиоткой? что бы потом использовать данную библиотеку в своем приложении.
← →
wicked © (2006-10-07 19:17) [1]короткий и, наверное, неверный ответ - да, если обьект(-ы), живущий в длл, поддерживает интерфейсы type library... тогда можно будет достать все интерфейсы и методы, предоставляемые обьект(-ом/-ами)
← →
moccom (2006-10-07 19:19) [2]type library увы нет, я забыл это упомянуть.
← →
sniknik © (2006-10-07 19:30) [3]делаеш "import type labrary" (это в проектах) этой библиотеки, и получаеш все методы/свойства даже те которые "та" программа и не использует...
← →
moccom (2006-10-07 19:47) [4]
> делаеш "import type labrary"
Я так понял что это будет реаботать только в том случае, как выше сказано "поддерживает интерфейсы type library", в данном случае (> делаеш "import type labrary") я получаю "Ошибка при загрузке библиотеки". Неужели нет никакого "com сниффера", который бы во время взаимодействия приложения и com библиотеки, мог отследить данный процесс.
← →
sniknik © (2006-10-07 22:53) [5]> Ошибка при загрузке библиотеки
значит это не COM.
> Неужели нет никакого "com сниффера"
в нем нет необходимости, там все открыто.
← →
jack128 © (2006-10-08 02:33) [6]sniknik © (07.10.06 22:53) [5]
значит это не COM.
а разве COM ТРЕБУЕТ наличие библиотеки типов?
← →
moccom (2006-10-08 11:34) [7]
> значит это не COM.
А зачем же тогда в экспорте этой библиотеки: DllCanUnloadNow, DllGetClassObject, DllRegisterServer, DllUnregisterServer, - я думал что подобные вещи указывают но com.
← →
sniknik © (2006-10-08 13:28) [8]а может просто одноименные?... малоли кто что напрограммирует. и откуда ты про них узнал? исходники есть, это твоя dll? тогда какие затруднеия узнать ее интерфейсы, если они и так твои?
если не твоя, и есть только один dll файл то, проверь выполни regsvr32 "имя файла.dll". будет удачно, значит и импорт должен сработать (впрочем мне всегда достаточно было создание модуля "create unit" там же, без установок/создания компонент, в котором все и можно посмотреть)
если регистрируется но не импортируется... ну выложи ее куданибудь посмотреть. может действительно сделано через задницу (по типу 1С-ных к примеру).
← →
moccom (2006-10-08 14:49) [9]
> а может просто одноименные?... малоли кто что напрограммирует.
Достоверно известно, что это именно com. (библиотека не моя)
> проверь выполни regsvr32 "имя файла.dll"
Всё ок, успешно регистрируется. Но вытащить tlb (или как это корректно называется) не удается. Просто есть ещё одна библиотека от этого же автора и вот там присутствует tlb, который успешно можно вытащить со всеми вытекающими интерфейсами и методами.
Видимо придется мне читать литературу по com, что бы хоть понимать с чем имею дело.
← →
Внук © (2006-10-08 14:59) [10]Попробуй программку oleview на нее натравить...
← →
moccom (2006-10-08 15:11) [11]OLE View (от MS) пробовал, но т.к. tlb в библиотеке отсутствуют, то и "View TypeLib" в OLE View не удается. И хоть библиотека успешно регистрируется (regsvr32...) в системе, но в дереве классов OLE View напрочь отсутствуют какие-либо отчетливые упоминания.
← →
Kolan © (2006-10-08 15:13) [12]
> Но вытащить tlb (или как это корректно называется) не удается.
AFAIR в этом случае попользовать её получится только с пом документации от автора.
← →
Внук © (2006-10-08 15:13) [13]>>moccom (08.10.06 15:11) [11]
Ну, значит COM-объект без ITypeInfo. Это судьба :)
← →
moccom (2006-10-08 15:27) [14]Ну вообщем весь смыс то вопроса можно переформировать. Есть ли какие либо методики упрощающие реверсинг данного процесса? (окромя жесткого реверсинга с использованием дизассемблера и головной боли) все же com, поэтому и спрашиваю, может реально как-то перехватывать вызовы или ещё что-то? Скажите, такое хотя бы чисто теоретически возможно?
← →
moccom (2006-10-08 15:33) [15]Просто, есть же уже готовое приложение, которое использует эту библиотеку, вот и интересно реально ли отследить вызовы из приложения в com.
Страницы: 1 вся ветка
Текущий архив: 2006.10.29;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.029 c