Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Webbrowser navigate mit Login (https://www.delphipraxis.net/94125-webbrowser-navigate-mit-login.html)

ebber 16. Jun 2007 19:16


Webbrowser navigate mit Login
 
Hallo

ich habe mir ein kleines Programm geschrieben gehabt mit dem ich mich in meinen Router einloggen konnte mit dem Webbrowser. Das war einfach so :

Delphi-Quellcode:

webbrowser1.Navigate('http://192.168.2.1/cgi-bin/login.exe?pws=xyz');
jetzt habe ich einen neuen Router und will das gleiche wieder machen, aber jetzt will das nicht mehr.

Delphi-Quellcode:

[url]http://192.168.2.1/cgi-bin/webcm?login:command/password=xyz[/url]
Das wäre die neue url. Also das Feld heisst login:command/password und die url http://192.168.2.1/cgi-bin/webcm.

Wenn ich das jetzt so mache dann komme ich auf die Seite wo man sich einloggen kann, aber das pw steht nicht in dem Feld und eingeloggt ist man auch nicht.

Habe ich was falsch gemacht ?

Oder kann man sich noch auf eine andere Weise einloggen ?

MfG

mkinzler 16. Jun 2007 19:34

Re: Webbrowser navigate mit Login
 
Ich vermute mal das der neue Router POST- anstatt GET-Parameter verwendet

marabu 16. Jun 2007 19:55

Re: Webbrowser navigate mit Login
 
Hallo,

da es sich wohl um einen D-Link Router handeln dürfte, ist eine Anmeldung über den URL nicht möglich - Markus hat Recht mit dem POST. Ich würde nach dem Navigate auf die Login-Seite die beiden Variablen setzen und Submit aufrufen (HTML DOM).

Grüße vom marabu

ebber 16. Jun 2007 20:44

Re: Webbrowser navigate mit Login
 
Danke.

Es ist ein Speedport 900.

Wie mache ich das ungefähr mit den Variabeln setzen und submit aufrufen ?

MfG

marabu 16. Jun 2007 20:51

Re: Webbrowser navigate mit Login
 
Hallo,

schau mal, ob du das für deine Zwecke anpassen kannst: klick

Freundliche Grüße

ebber 16. Jun 2007 23:07

Re: Webbrowser navigate mit Login
 
Danke. Ich habe das so anpassen können, aber jetzt ist ein anderes Problem aufgetaucht. Ein sehr seltsames.

Wenn ich
Delphi-Quellcode:

WebBrowser1.Navigate('http://192.168.2.1/cgi-bin/webcm');
mache dann kommt dieser Fehler :

Delphi-Quellcode:
---------------------------
Fehler
---------------------------
Es ist ein Laufzeitfehler aufgetreten.
Möchten Sie den Debugmodus starten?

Zeile: 11
Fehler: 'top.frames.1.location' ist Null oder kein Objekt
---------------------------
Ja  Nein  
---------------------------
Er kommt nur bei dieser Seite, bei einer anderen nicht. Im normalen IE kommt er auch nicht.

Kann man diesen Fehler erklären oder ihn irgendwie unterbinden ? Funktionieren tuts trozdem mit dem einloggen.

MfG

mkinzler 16. Jun 2007 23:09

Re: Webbrowser navigate mit Login
 
Existiert der Frame?

ebber 16. Jun 2007 23:11

Re: Webbrowser navigate mit Login
 
Ich habe nicht wirklich eine Ahnung welcher Frame gemeint ist ?

mkinzler 16. Jun 2007 23:14

Re: Webbrowser navigate mit Login
 
Der Frame mit der Bezeichnung 1.
Ich vermute mal das die Seite eigentlich aus mehreren Frames besteht, du aber eine Unterseite aufrufst, welche versucht auf einen anderen Frame zuzugreifen, der aber dann nicht existiert

ebber 16. Jun 2007 23:16

Re: Webbrowser navigate mit Login
 
Das ist gut möglich da mein Fenster eigentlich der Popup eines anderen Frames ist. Kann ich den Fehler unterbinden, damit er nicht mehr kommt, da er eigentlich irrelevant ist.

marabu 17. Jun 2007 08:10

Re: Webbrowser navigate mit Login
 
Guten Morgen.

Setze WebBrowser.Silent auf True.

Freundliche Grüße

ebber 17. Jun 2007 10:33

Re: Webbrowser navigate mit Login
 
Guten fast schon mittag.

Das habe ich getan, aber nun scheint der Fehler automatisch mit "ja" beantwortet zu werden und ich kann mir einen Debugger aussuchen.

MfG

marabu 17. Jun 2007 12:18

Re: Webbrowser navigate mit Login
 
Hallo,

TWebBrowser ist das Herzstück des Internet-Explorers und verwendet dessen Einstellungen. Wenn du in den erweiterten Internetoptionen einen Haken bei den entsprechenden Optionen machst, dann wird alles gut. Willst du die Einstellungen nur für deine Anwendung, dann musst du etwas mehr Zeit und Code investieren, die Einstellungen werden dann über das API gemacht.

Freundliche Grüße

ebber 17. Jun 2007 13:05

Re: Webbrowser navigate mit Login
 
Danke ich habs geschafft. :-D :thumb:

ebber 18. Jun 2007 19:23

Re: Webbrowser navigate mit Login
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe nochmal fast das gleiche Problem.

Ich will die Verbindung trennen. Das ist eigentlich nur ein Button, der geklickt werden muss.
Ich habe hier dann nur die Daten verändert.

Delphi-Quellcode:

procedure TForm1.Button1Click(Sender: TObject);
begin

   WebBrowser1.Navigate('http://192.168.2.1/cgi-bin/webcm');

end;

procedure TForm1.Button2Click(Sender: TObject);
begin

   WebBrowser1.OleObject.document.forms.item(0).elements.item
                 ('connection0:settings/cmd_disconnect').value:='1';
     WebBrowser1.OleObject.document.forms.item(0).submit;

end;
Also vorher wars so :

Delphi-Quellcode:
   ('login:command/password').value:='xyz';
Ich habe mal noch die Firefox Seiteninformationen angehängt.

Aufjedenfall geht das jetzt nicht. Kann man das nicht einfach so machen? Kann mir da jemand helfen?

MfG

marabu 18. Jun 2007 20:05

Re: Webbrowser navigate mit Login
 
Hallo,

vielleicht genügt es ja nicht ...disconnect auf 1 zu setzen. Setze ...connect noch auf 0.

Freundliche Grüße

ebber 18. Jun 2007 20:17

Re: Webbrowser navigate mit Login
 
Das hat leider nicht funktioniert.

ebber 18. Jun 2007 21:07

Re: Webbrowser navigate mit Login
 
Ich habe das im Seitenquelltext gefunden

Delphi-Quellcode:

document.getElementById('disconnect').style.visibility = 'visible';
Das 'disconnect' wird wohl der Button sein? Kann ich so auch auf ihn zugreifen und ihn klicken oder sowas ?

MfG

ebber 19. Jun 2007 16:23

Re: Webbrowser navigate mit Login
 
Ich sehe ein das ich das selber hätte rausfinden können.

Aufjedenfall, so geht das :

Delphi-Quellcode:

WebBrowser1.OleObject.document.getElementById('disconnect').click;
MfG


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:26 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz