Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.19;
Скачать: CL | DM;

Вниз

Как добраться до таблицы интерфейсов   Найти похожие ветки 

 
Eraser ©   (2006-02-08 21:34) [0]

Здраствуйте.
Необходимо каким-то образом получить указатель на уже созданый интерфейс (вчастности IDirectDraw). Думаю значение можно получить только структур

PInterfaceTable = ^TInterfaceTable;
 TInterfaceTable = record
   EntryCount: Integer;
   Entries: array[0..9999] of TInterfaceEntry;
 end;

PInterfaceEntry = ^TInterfaceEntry;
 TInterfaceEntry = record
   IID: TGUID;
   VTable: Pointer;
   IOffset: Integer;
   ImplGetter: Integer;
 end;


так вот, по какому смещению в программе находится эта самая TInterfaceEntry? вообще реально добраться до этой структуры в общем случае, а не только для приложений, откомпилированных какой-то конкретной версией, конкретного компилятора?

Спасибо.


 
Rouse_ ©   (2006-02-09 13:07) [1]

QueryInterface?


 
jack128 ©   (2006-02-09 14:45) [2]

Eraser ©   (08.02.06 21:34)
TInterfaceEntry? вообще реально добраться до этой структуры в общем случае, а не только для приложений, откомпилированных какой-то конкретной версией, конкретного компилятора?

вообще то TInterfaceEntry имеет смысл только в контексте компилятора Delphi..


 
Sapersky   (2006-02-10 15:36) [3]

Если получить интерфейс нужно во внедрённой в постороннюю программу DLL, то можно перехватить функцию (метод) создания интерфейса. Во всяком случае, в демке madCodeHook так сделано: http://www.madshi.net



Страницы: 1 вся ветка

Текущий архив: 2006.03.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.04 c
11-1121272719
Dodfr
2005-07-13 20:38
2006.03.19
Hint error when compiling


1-1140089973
tesseract
2006-02-16 14:39
2006.03.19
1с и TPropertyPage


1-1139516532
imm
2006-02-09 23:22
2006.03.19
$R- в созданном юните, непашет на уровне компиляции


1-1139837066
Gamer
2006-02-13 16:24
2006.03.19
Работа с файлом и несколькими RichEdit ами


4-1134983285
soi
2005-12-19 12:08
2006.03.19
Работа с LPT портом.