Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
6-12846
w666w
2003-03-11 13:39
2003.05.05
Ip адрес в In_Addr


3-12610
Jaxtor
2003-04-15 13:56
2003.05.05
Ошибка при выполнении Insert


1-12784
DDF
2003-04-22 10:40
2003.05.05
[Error] на значении Nil


14-12944
Agent[007]
2003-04-17 13:53
2003.05.05
Function


3-12623
Minotavr
2003-04-14 17:08
2003.05.05
DBGrid




   Наверх