Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

[TWebbrowser+JS] Как проверить переменную js? [D7, XP]


Страницы:   1 2

vegarulez ©   (2016-07-28 11:44:00) 

Всем привет!
Подскажите как правильно проверять наличие переменной в загруженном документе в twebbrowser, а то если в одном документе она есть и к ней обращаюсь - то всё ок то в другом ее нет и ловлю исключение. Но проверять через исключение как-то не айс. А по другому как - не знаю. olevariant не получается проверить на Assigned. Подскажите каким образом это можно сделать?


procedure TFormMain.Webbrowser1CommandStateChange(Sender: TObject;
 Command: Integer; Enable: WordBool);
var
 document: IHTMLDocument2;
 V: olevariant;
begin
  Assert(Assigned(document));
   if Assigned(document) then
   try
     V := Webbrowser1.Document;
     V := V.parentWindow;
     if (VarToStr(V.prov_id) <> '') then
     begin
       prov_id := V.prov_id;
       btClick(Application);
       V.prov_id := '';
       prov_id := '';
     end;
except
     on E: Exception do
     begin
       MessageDlg('Webbrowser1CommandStateChange' + #10#13 + E.Message + #10#13 + inttostr(E.HelpContext), mtWarning, [mbOk], 0);
       document.clear;
     end;
   end;
end;


vegarulez   (2016-07-28 13:06:00) [21]

Webbrowser1CommandStateChange
Method 'prov_id' not supported by automation object
0


vegarulez   (2016-07-28 13:03:00) [22]

Не совсем понятно что с nil сравнивать?
V.prov_id<>nil - выдает инкомпатибл тайпс ещё на этапе компиляхи

Остальные методы при обработке в документе, в котором в js нет такой переменной (prov_id) также выдает ошибку на эксепшене.


vegarulez   (2016-07-28 12:30:00) [23]

Ок, попробую пасип.


iop   (2016-07-28 12:10:00) [24]

вариземпти + варизнул + <> nil


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо