Всем привет!
Пытаюсь из dbgeng.dll вызвать метод
Значит зарегистрировал сначала колбек методом
Код пишу на ассемблере, поэтому из хидера dbgeng.h создал себе инклуд с GUID'ами всех интерфейсов. Думал в них дело, и чтоб-уж наверняка, сравнил даже с листом от сюда - всё совпадает, а интерфейса 'IDebugOutputCallbacks' всё-равно нет. Может кто-нибудь подскажет, в из-за чего такое может быть? Вот скрин обхода всех интерфейсов.. Здесь я в цикле(35) вызываю Query, подставляя поочерёдно все GUID - метод Query возвращает или указатель на интерфейс, или нуль, если не может его найти:
Пытаюсь из dbgeng.dll вызвать метод
'IDebugControl::Execute'.Значит зарегистрировал сначала колбек методом
'IDebugControl::SetOutputCallbacks', после чего Execute (с флагом ECHO) возвращает S_OK. Однако выводом результата на консоль занимается уже другой метод 'IDebugOutputCallbacks::Output', вот здесь и получается прокол. Дело в том, что 'QueryInterface' клиента просто не может обнаружить интерфейс 'IDebugOutputCallbacks', чтобы я смог вызвать из него метод 'Output'.Код пишу на ассемблере, поэтому из хидера dbgeng.h создал себе инклуд с GUID'ами всех интерфейсов. Думал в них дело, и чтоб-уж наверняка, сравнил даже с листом от сюда - всё совпадает, а интерфейса 'IDebugOutputCallbacks' всё-равно нет. Может кто-нибудь подскажет, в из-за чего такое может быть? Вот скрин обхода всех интерфейсов.. Здесь я в цикле(35) вызываю Query, подставляя поочерёдно все GUID - метод Query возвращает или указатель на интерфейс, или нуль, если не может его найти: