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

Вниз

Поиск текста в окне IE   Найти похожие ветки 

 
Yegorchic ©   (2004-06-27 03:57) [0]

Здрасте... Не подскажите как узнать существует ли определённый текст в открывшимся окне IE?


 
Ihor Osov'yak ©   (2004-06-27 13:02) [1]

Задачу следует разбить на две подзадачи.
1. Получение интерфейса IHtmlDocument2 от документа в IE/
2. Имея IHtmlDocument2 задачу можно решить несколькими способами. Один из них - получить IHtmlElement от тега body и воспользоваться методом get_InnerText.

как ввод в тему по п2. delphi.vitpc.com\mastering\tweb.htm
по п1. -  в ИЕ ищем окно с именем класса Internet Explorer_Server,

далее примерно так -

type
 TObjectFromLResult = function(LRESULT: lResult; const IID: TIID; WPARAM:
   wParam; out pObject): HRESULT; stdcall;

const
 MSG: Integer = 0;
 hInstLib: HWND = 0;
 ObjectFromLresult: TObjectFromLresult = nil;

function GetIDocFromHWND(WHandle: HWND; var iDoc: IHtmlDocument2): HRESULT;
var
 lRes: Cardinal;
begin
 Result := S_FALSE;
 if hInstLib = 0 then
   hInstLib := LoadLibrary("Oleacc.dll");
 if not assigned(ObjectFromLresult) then
   @ObjectFromLresult := GetProcAddress(hInstLib, "ObjectFromLresult");
 if @ObjectFromLresult <> nil then
 begin
   try
     if MSG = 0 then
       MSG := RegisterWindowMessage("WM_HTML_GETOBJECT");
     SendMessageTimeOut(WHandle, MSG, 0, 0, SMTO_ABORTIFHUNG, 1000, lRes);
     Result := ObjectFromLresult(lRes, IHTMLDocument2, 0, iDoc);
   finally
     //FreeLibrary(hInst);
     //hInst := 0;
     
   end;
 end;
end;


 
ЮрийК ©   (2004-06-27 17:02) [2]

Есть следующая задача - найти слово (фразу - во фразе слова не обязательно разделяются одним пробелом, где-то может быть и два пробела например) в вебброузере, далее селектировать найденное.

Какой можете предложить алгоритм для реализации?



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

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

Наверх




Память: 0.47 MB
Время: 0.049 c
1-1088067216
Lexa
2004-06-24 12:53
2004.07.11
Как программно назначить событию OnClik для меню свою процедуру?


6-1084397457
Renald
2004-05-13 01:30
2004.07.11
открыт ли 21 80 порт на удал...


6-1084424963
Владимир_М
2004-05-13 09:09
2004.07.11
Структура пакетов для обмена с Borland Socket Server


14-1087926324
Profi
2004-06-22 21:45
2004.07.11
Помогите выбрать резак


14-1087736047
ИМХО
2004-06-20 16:54
2004.07.11
Почему программеры любят ПИВО: моя теория