visualbasic
Goto Top

Vb.net Webbrowser Textbox ansteuern, Text reinschreiben, Enter drücken

hallo
ich möchte an dieser Textbox
<input type="password" class="stylepwd" name="login:command/password" size="12" maxlength="12" id="pass">  
eine zeichenfolge eintragen und anschließend mit
<code vb>sendkeys.sendwait(chr(13)) bestätigen.
Mit <code vb>sendkeys.sendwaut(zeichenfolge & chr(13)) dauerts zu lang und ist es zu schlecht.
Wie kann ich das Teil dann ansprechen?
Bei Google funktioniert ja super mit <www.youtube.com/watch?v=AV2tk2FTM0g&t=181 dem>, aber wie mache ichs da?

Bin erst 14 (gestern geworden!), programmiere auch schon ein Jahr, aber ich finde echt nichts dazu...
P.S. Ja die Homepage www.google.com ist mir bekannt -face-smile

Was soll ich machen?

mfg CHris

back-to-top Habs jetzt geschafft! Ohne eure Hilfe

Content-Key: 191020

Url: https://administrator.de/contentid/191020

Printed on: April 24, 2024 at 09:04 o'clock

Member: MonoTone
MonoTone Sep 11, 2012 at 11:41:58 (UTC)
Goto Top
Möchtest du das zwingend mit dem Webbrowsercontrol erledigen?
Member: visualbasic
visualbasic Sep 11, 2012 at 14:27:39 (UTC)
Goto Top
Zitat von @MonoTone:
Möchtest du das zwingend mit dem Webbrowsercontrol erledigen?
muss nicht sein, wäre aber toll; wenn es ohne einfacher ist, dann mach ichs so
Member: MonoTone
MonoTone Sep 12, 2012 updated at 08:47:06 (UTC)
Goto Top
Sowas erledigt man üblicherweise über einen WebRequest.
Dabei solltest du die Webseite untersuchen und die POST (bzw. GET) Parameter anschauen.
Diesen Post und die Parameter mit entsprechenden Werten sendest du via .NET WebRequest an den Host.

Die zurückgesendeten Daten kannst du dann entsprechend auswerten.
Member: visualbasic
visualbasic Sep 12, 2012, updated at Sep 13, 2012 at 11:02:41 (UTC)
Goto Top
Zitat von @MonoTone:
Diesen Post und die Parameter mit entsprechenden Werten sendest du via .NET WebRequest an den Host.
Danke; die "Webseite" hat die IP 192.168.2.1
Member: MonoTone
MonoTone Sep 12, 2012 at 13:14:36 (UTC)
Goto Top
Member: visualbasic
visualbasic Sep 13, 2012 at 11:04:12 (UTC)
Goto Top
Danke, bringt mich schon mal ein Stück weiter;
wie mache ich das z.B. an der Textbox
<code plain><input type="password" class="stylepwd" name="login:command/password" size="12" maxlength="12" id="pass">
Member: MonoTone
MonoTone Sep 13, 2012 at 11:09:51 (UTC)
Goto Top
Was möchtest du denn letzlich erreichen?
Member: visualbasic
visualbasic Sep 13, 2012 at 11:15:14 (UTC)
Goto Top
Zitat von @MonoTone:
Was möchtest du denn letzlich erreichen?
Das ist eine Textbox aus dem Router; ich möchte dass wenn ich auf nen Button klick, dass dann eine Request gestartet wird, der dann "2003" an den "Server" senden und mich einloggt.
bzw. ein programm mit dem ich mach eben die IP vom Router ändern kann, NAS konfigurieren kann, Firewall ein/aus schalten kann. Da ich jetzt nicht an das Programm kann, kann ich den Fehler auch nicht genau sagen; aber ich glaube er war:
<code plain>system.nullreferenceexception
Member: MonoTone
MonoTone Sep 13, 2012 at 11:31:36 (UTC)
Goto Top
Grundsätzlich musst du dir anschauen, welche Parameter gesendet werden.
Für Firefox gibts zB das Addon HttpFox.
Mit diesem siehst du, welche Daten gesendet werden.

zB für den Aufbau dieser Seite ein PHPSESSID Cookie.
Beim Absenden einer Form. Wie zB ein Login werden die eingegeben Daten (User und Pw) üblicherweise via Post request und Post Parameter gesendet.
Die können zB lauten:
benutzer=dieter&kennwort=passw0rt

Diesen Request musst du nachbauen, ggf. Cookies auslesen und bei den nächsten Requests wieder mitsenden.
Member: visualbasic
visualbasic Sep 13, 2012 updated at 15:28:38 (UTC)
Goto Top
Danke

Zitat von @MonoTone:
Grundsätzlich musst du dir anschauen, welche Parameter gesendet werden.
Wo?

Für Firefox gibts zB das Addon HttpFox.
Ich habe Google Chrome; trotzdem danke!

zB für den Aufbau dieser Seite ein PHPSESSID Cookie.
Die seite ist kein PHP und verfügt über keine Session-Identification


Welcher Param ist dann wichtig bei
<code plain><input type="password" class="stylepwd" name="login:command/password" size="12" maxlength="12" id="pass">?

Bei Google brauch ich z.B.
Browser.Document.GetElementById("q").SetAttribute("value", "SearchString")  
weil bei Google <code plain><input id="gbqfq" class="gbqfif" name="q" type="text" autocomplete="off" value="" style="border: none;[....] drin steht; da wird also Bei "ByID" der "name=""" verwendet.

Wenn ich jetzt aber ein <code vb>Browser.Document.GetElementById("login:command/password").SetAttribute("value", "2003)
reinschreib, geht es genauso wenig wie bei <code vb>Browser.Document.GetElementById("pass").SetAttribute("value", "2003)

Was soll ich dann machen?