aicher1998
Goto Top

VB.Net Multiple Webbrowser jedoch mit unterschiedlichen CookieContainern

Hallo,

Ich möchte in einer Form mehrere Webbrowser haben, die voneinander unabhängige Cookies haben. Ich möchte mich zum Beispiel bei ein und der selben Webseite mehrfach mit verschiedenen Accounts einloggen.
Allerdings werden hierbei alle Cookies "in einen Topf geworfen".

Um dem ein Ende zu bereiten, hab ich nun versucht, die Abfragen mit einer selbst erstellten Class zu machen.
Das funktioniert soweit auch ganz gut. Ich logge mich mittels POST ein und übergebe die Response mit

 WebBrowser1.DocumentText

an den Webbrowser.
Dieser zeigt auch (fast) alles korrekt an.

Jetzt mein Problem:
Wenn ich einen Link klicke, wird nicht die richtige URL geladen, sondern das about: (soll heißen, anstatt von http://www.meinserver .xyz/index.html wird nun about:/index.html aufgerufen)

Mir ist bewusst, dass auf Webseiten nicht immer src:"http://www.meinserver .xyz/index.html" sondern meist einfach nur src:"/index.html" steht. Hier "weiß" der Browser ja die eigeentliche URL, an die er "/index.html" anfügen muss.

Als praktischer Nebeneffekt ist die Werbung auch gleich deaktiviert
738de054a36bd4a8883d91d997ecf83c

Nur wie mach ich das, dass mein Browser auch "weiß", an welche URL er anfügen muss?

Ich hab schon versucht, mittels
... Handles WebBrowser1.Navigating
darauf zu warten, bis wieder ein "about:/" aufgerufen wird, das ich dann einfach ersetz durch die richtige URL (den richtigen Hostname), was auch nicht wirklich funktioniert hat...

Also,
wie mach ich das am besten?
Oder gibt es eine saubere Methode, mehrere Webbrowser in einer Form unabhängig von einander zu betreiben?

Ich bedank mich schon mal vorab für eure Hilfe!

Chris Aicher

Content-Key: 286053

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

Printed on: April 20, 2024 at 02:04 o'clock

Mitglied: 114757
114757 Oct 21, 2015 updated at 11:14:39 (UTC)
Goto Top
Moin,
dazu müsstest du beide Browser in unterschiedliche Prozessen laufen lassen.
http://stackoverflow.com/questions/1051365/multiple-webbrower-sessions- ...

Mach das besser mit GeckoFX. Die IE-Implementation des WebBrowser-Steuerelements ist doch maßlos veraltet ...

Gruß jodel32
Member: Aicher1998
Aicher1998 Oct 23, 2015 at 08:27:37 (UTC)
Goto Top
Danke!
Hab gerade keine Möglichkeit das zu testen, aber demnach müsste es doch auch funktionieren, wenn ich einen Thread erstell, der über einen Delegate Sub meiner Form1 ein neues Webbrowser-Control hinzufügt oder?
GeckoFX hab ich bereits ausprobiert. Aber ich möchte nicht, dass ich ständig alle Firefox-DLLs "mitschleppen" muss. Zudem hab ich noch nicht ganz rausgefunden, wie ich den SourceCode der empfangenen Webseiten ändern kann.

Ich müsste demn Browser anweisen können: Replace("red", "green")
Bei Windows 10 ist glaub ich sogar standarmäßig Micosoft Edge als Standardbrowser in "Webbrowser" eingerichtet.
Beim Standardwebbrowser-Control ist es ja möglich, den Code der empfangenen Webseiten zu ändern, auch wenn ich das noch nicht ganz verstanden hab, wie das geht...
Member: Aicher1998
Aicher1998 Nov 09, 2015 at 09:20:45 (UTC)
Goto Top
Zitat von @114757:

Moin,
dazu müsstest du beide Browser in unterschiedliche Prozessen laufen lassen.
http://stackoverflow.com/questions/1051365/multiple-webbrower-sessions- ...
Ne das funktioniert nicht. Da schreibt einer:

Currently, no, you cannot implement isolation of this sort using the Web Browser control without putting each instance in a different process.
You could run each control in an out-of-process COM server or a new instance of your application, if appropriate.
das funktioniert aber nicht.

Mach das besser mit GeckoFX. Die IE-Implementation des WebBrowser-Steuerelements ist doch maßlos veraltet ...
Da hast du recht. Mit dem komm ich aber nicht so zurecht.
Mitglied: 114757
114757 Nov 09, 2015 at 09:25:34 (UTC)
Goto Top
Mit dem komm ich aber nicht so zurecht.
Wozu gibt es Doku ??
Member: Aicher1998
Aicher1998 Nov 09, 2015 at 09:32:45 (UTC)
Goto Top
Zitat von @114757:

Mit dem komm ich aber nicht so zurecht.
Wozu gibt es Doku ??
Schon aber bei dem hab ich noch nicht rausgefunden, wie man den Quelltext ändern kann.
Zudem möchte ich nicht, dass ständig der ganze Firefox mit in meinem Programm rumgeschleppt werden muss.