Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2013.06.09;
Скачать: [xml.tar.bz2];

Вниз

Как плучить кол-во фреймов из 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.002 c
2-1352445326
NapalmRain
2012-11-09 11:15
2013.06.09
MultiByteToWideChar или другой способ перевести UTF16 LE в ANSI


15-1359491402
Юрий
2013-01-30 00:30
2013.06.09
С днем рождения ! 30 января 2013 среда


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


3-1289558383
dest81
2010-11-12 13:39
2013.06.09
Поиск по несуществующему полю


2-1352423459
Signal
2012-11-09 05:10
2013.06.09
Как плучить кол-во фреймов из IWebBrowsera?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский