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

Вниз

Как плучить кол-во фреймов из IWebBrowsera?   Найти похожие ветки 

 
Signal   (2012-11-09 05:10) [0]

Пробую так:
WB - это IWebBrowser2;

iDoc := WB.Document as IHtmlDocument2;
FramesCol := iDoc.Get_frames;
FramesLen := FramesCol.Get_length;
ViewMessage(FramesLen); - выдает всегда 1
хотя на странице есть кроссдоменный фрейм

iDoc := WB.Document as IHtmlDocument2; // т.е. вот тут в Idoc лежит основной фрейм и нет других
уже всю голову сломал, мастера помогите плз!

//====


 
sniknik ©   (2012-11-09 08:09) [1]

> выдает всегда 1
открой исходный код странички и посчитай количество тегов <frame> "руками".
???

> есть кроссдоменный фрейм
в смысле? хотя не важно, он есть один?


 
Signal   (2012-11-09 12:35) [2]

все ребят разобрался, дело в том, что если кроссдоменный фрейм (то вышеописанным методом он не показуется, типа из за соображений безопасности)
нашел вот такой код:
  function CrossDomainFrame(Doc : IHTMLDocument2;
                            nFrame : Integer) : IWebBrowser2;
  var
     theContainer : IOLEContainer;
     Enumerator : IEnumUnknown;
     nFetched : PLongInt;
     unknownFrame : IUnknown;
  begin
     Result := nil;
     nFetched := nil;
     theContainer := Doc as IOleContainer;
     theContainer.EnumObjects(OLECONTF_EMBEDDINGS, Enumerator);
     Enumerator.skip(nFrame);
     Enumerator.next(1, unknownFrame, nFetched);
     unknownframe.QueryInterface(IID_IWebBrowser2, Result);
  end;

правда тормознуто работает, но работает



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

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

Наверх




Память: 0.47 MB
Время: 0.006 c
2-1348466696
Вячеслав
2012-09-24 10:04
2013.06.09
Дескриптор ClientSocket


15-1359640696
БарЛог
2013-01-31 17:58
2013.06.09
Synolony хранилище


2-1352445326
NapalmRain
2012-11-09 11:15
2013.06.09
MultiByteToWideChar или другой способ перевести UTF16 LE в ANSI


2-1352062678
HEND
2012-11-05 00:57
2013.06.09
DBImage Вопрос


15-1359043243
Kerk
2013-01-24 20:00
2013.06.09
Джо Армстронг об обучении программированию