Einzelnen Beitrag anzeigen

Benjin

Registriert seit: 1. Nov 2004
Ort: München
64 Beiträge
 
Delphi 7 Enterprise
 
#1

Problem mit MSHTMLTxtRange

  Alt 28. Mär 2005, 16:48
Hallo,

ich möchte mit Hilfe eines IHTMLTxtRange Objekts einen bestimmten Term in 4 verschiedenen HtmlSeiten suchen.
Dazu lasse ich in einer Schleife zunächst die entsprechende Seite aufrufen, um dann das TxtRange Objekt zu benutzen. Leider wird bei meiner Implementierung stets eine EAccessViolation aufgerufen, obwohl die Funktion ohne entsprechende Schleife, also bei der Suche in nur einem Dokument einwandfrei funktioniert.

Delphi-Quellcode:
procedure MultiSearch(Term: String);
var
   tr: IHTMLTxtRange;
   i: Integer;
begin

if Term <> 'then
 begin
for i:= 0 to 3 do
 begin

 FrmMultisearch.WBMultiSearch.Navigate(AdrArticles + IntToStr(i) +
 '.html');


 if not FrmMultisearch.WBMultiSearch.Busy then
   begin


      tr := ((FrmMultisearch.WBMultiSearch.Document as
                  IHTMLDocument2).body as
      IHTMLBodyElement).createTextRange;
    {Get a body with IHTMLDocument2 Interface and then a
      TextRang obj. with IHTMLBodyElement Intf.}


    while tr.findText(Term, 1, 0) do //while we have result
      begin

      inc(hitcounts[i]);
      end;
    end;

  end;
 end;
end;

Leider werd ich aus der MSHTML Referenz auch nicht schlauer, wodurch diese Exception geworfen werden könnte.
..... - Kurt - .....
  Mit Zitat antworten Zitat