Entwickler-Ecke

Internet / Netzwerk - Message von Internet Explorer abfangen/umleiten


Doc Brown - So 14.07.02 02:05
Titel: Message von Internet Explorer abfangen/umleiten
Hallo,

möchte gerne wissen was IE intern aufruft, wenn man in einer HTML-Seite ein Image mit der Linken Maustaste anklickt??

Hat jemand sowas schon gemacht, oder kennt eine Seite zu diesem Thema ?? :D

Grüße Doc Brown


Savage - So 14.07.02 09:39

Ganz einfach:

du nimmst dir eine TServerSocket kompo und trägst dort einen Port ein.
Danach stellst du im IE unter Proxy die Adresse 127.0.0.1 oder die aktuelle IP ein und als Port den Port vom TServersocket.

Jetzt fügst du noch eine Memo Kompo hinzu, wo dann der gesendete Header vom IE gespeichert wird. Im OnClientRead Ereignis des Serversockets gibts du dann das ein:

Quelltext
1:
memo1.text := Socket.ReceiveText                    


Jetzt muss nur noch der Serversocket aktiviert werden und im IE dann halt als Adresse sowas wie: Http://blablalba/bild.jpg (das hat den gleichen Effekt, als wenn man mit der linken Maustaste auf ein Pic klickt)

mfg
Savage

Code-Tag hinzugefügt. Marc


Doc Brown - So 14.07.02 13:23

Hi,

danke erstmal für deine Hilfe. :)

Hab alles so gemacht wie du es beschrieben hast,
es passiert aber leider nix :cry:

Liegt es vielleicht daran dass ich eine schlechte Port Nr. gewählt habe ?
Bei 4000 stürzt mein Programm ab!!

Grüße Doc Brown


Savage - So 14.07.02 13:43

Hi,

hmm, komisch, bei mir funktioniert es. Ich hab als Port die 79 gewählt und im IE als Proxy-Adresse die 127.0.0.1 und dort den Port 79 (bei allen Einstellungen) eingestellt.

Ich hab mal schnell den Source hier.
In dieser Form ist lediglich eine Memo1 kompo und eine TServersocket1 mit drin.


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ScktComp, StdCtrls;

type
  TForm1 = class(TForm)
    ServerSocket1: TServerSocket;
    Memo1: TMemo;
    procedure FormCreate(Sender: TObject);
    procedure ServerSocket1ClientConnect(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure ServerSocket1ClientRead(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure ServerSocket1ClientDisconnect(Sender: TObject;
      Socket: TCustomWinSocket);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
serversocket1.Port := 79;
serversocket1.Open;
end;

procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
caption := 'connect';
end;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var s: STring;
begin

s := socket.ReceiveText;
memo1.Text := s;

end;

procedure TForm1.ServerSocket1ClientDisconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
caption := 'disconnect';
end;

end.


mfg
Savage


Doc Brown - So 14.07.02 14:00

Hi,

selbst wenn ich deinen Code zu 100% übernehme und den Port auf 79 stelle, passiert überhaupt nix!?!?!

Liegt das vielleicht am Betriebssystem, ich benutze WinME und Delphi 6??

Grüße Doc Brown


DeCodeGuru - So 14.07.02 22:23

Hi Leute,

ich habe das auch mal probiert und es hat bei mir auch erstmal nicht gefuntzt, bis ich offline gegangen bin. Versucht das mal!!!

Ich weiss nicht, ob es daran liegt, aber bei meiner im momentigen IE-Konfiguration scheint er die Daten nicht an die angegebene Proxyadresse zu schicken, also wenn ich online bin. Wenn ich offline bin, schickt er die Daten brav an die Proxyadresse.

Ich verwende Win2000Pro nud Delphi6


Doc Brown - So 14.07.02 23:20

Hi,

du hattest recht sobald ich offline war ging es!!

Danke, darauf wär ich nie gekommen!!!

Grüße Doc Brown :D


DeCodeGuru - So 14.07.02 23:24

Hauptsache es funktioniert ;-)


Savage - Mo 15.07.02 09:05

Trotzdem Komisch,

ich bin nie Offline und es hat auch gefunzt, aber wie schon gesagt worden ist: Hauptsache es funktioniert.

mfg
Savage