Einzelnen Beitrag anzeigen

Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#1

TWebbrowser für Speedtest in Console

  Alt 19. Mär 2006, 02:42
Ich möchte gerne eine kleines Progrämmchen machen welches über www.wieistmeineip.de einen Speedtest durchführt. Als "normale" VCL-Anwendung habe ich es zum laufen bekommen. Ich möchte aber das Tool als Console haben, und da fangen die problem an...

Dies habe ich bis jetzt an Code:

Delphi-Quellcode:
program SpeedTest;

{$APPTYPE CONSOLE}

uses
  OleCtrls, SHDocVw;

type
  TMyClass = class
    Browser: TWebBrowser;
  private
    { Private declarations }
    procedure WebBrowserDocumentComplete(Sender: TObject;
      const pDisp: IDispatch; var URL: OleVariant);

  protected
   {...}
  public
    constructor Create; reintroduce;
    destructor Destroy; override;
  end;

constructor TMyClass.Create;
begin
  Browser := TWebBrowser.Create(nil);
  Browser.OnDocumentComplete := WebBrowserDocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant);
  Browser.Navigate('http://wieistmeineip.de/speedtest/run.php');
end;

destructor TMyClass.Destroy;
begin
  Browser.free;
  inherited destroy;
end;

procedure TMyClass.WebBrowserDocumentComplete(Sender: TObject;
      const pDisp: IDispatch; var URL: OleVariant);
begin
  // das 'writeln' ist nur testweise
  // der eigendliche Code wertet nach dem
  // 2. Durchlauf die Ergebnisse der SpeedTests aus
  // da beim 1. Durchlauf nur 'Test läuft' ankommt

  writeln('Document compled');
end;

begin
  TMyClass.Create;
end.
Jetzt stehe ich vor dem Problem, das ich dem Browser kein Ereignis zuweisen kann:
[Fehler] SpeedTest.dpr(26): Undefinierter Bezeichner: 'Sender'

Der Fehler tritt in dieser Zeile auf:

Browser.OnDocumentComplete := WebBrowserDocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); Wo liegt mein Problem??
Harry
Gruß Harry
www.H-Soft.info
  Mit Zitat antworten Zitat