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

Вниз

Как достучаться до IHTMLDocument из ActiveX   Найти похожие ветки 

 
ValeraVV ©   (2003-04-22 07:53) [0]

Написал свой ActiveX для вставки в HTML страницу (тег object). Можно ли достучаться из этого ActiveX до IHTMLDocument или IWebBrouser что бы понять на какой странице он находится (ее URI)


 
Крот ©   (2003-04-22 08:49) [1]

Можно. При создании твоего объекта будет вызван метод IObjectWithSite.SetSite, туда передается указатель на IUnknown, через него можно получить указатель на контейнер(IOleContainer),
а через контейнер запросить IHTMLDocument2. Примерно так, точней не скажу - давненько этим не занимался.


 
ValeraVV ©   (2003-04-22 09:43) [2]

Делаю так:
procedure TCard.DblClick;
var
O:IOLEContainer;
I:IHTMLDocument2;
begin
inherited;
FCard.ClientSite.GetContainer(O);
I:=O as IHTMLDocument2;
MessageDlg(I.location.toString, mtWarning, [mbOK], 0);
end;

При запуске из под отладчика работает
Но при открытии странички просто из эксплорера при даблклике пишет "Интерфейс не поддерживается"


 
Крот ©   (2003-04-22 10:09) [3]

Попробуй получить IHTMLDocument2 "по-честному", через QueryInterface. И еще я бы проанализировал ЧТО возвращает GetContainer.



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
14-12898
alex134
2003-04-10 22:26
2003.05.05
Отладка


11-12676
ACR
2002-07-26 23:57
2003.05.05
Builder C++


14-12932
D
2003-04-18 09:47
2003.05.05
Delphi не запускается!


4-12964
Chubais
2003-01-31 14:41
2003.05.05
глюк TDBGrid в W2K/XP


1-12712
AlexA
2003-04-23 15:16
2003.05.05
StatusBar и двойной клик