[VB6] Warten bis WebBrowser fertig geladen ist

  • Hey
    Ich code jetzt das erstmal an einem Account Checker. Soweit funktioniert auch alles gut nur habe ich ein Problem. Und zwar will ich das wenn der Account Checker sich z.B. bei einer Seite anmeldet so lange wartet bis der WebBrowser komplett fertig geladen ist und dann erst im Quelltext nachschaut ob er auch angemeldet ist oder nicht (-> Account valid/unvalid).


    Ich hab die ganze Nacht dran gesessen und überlegt wie ich das Problem lösen könnte. Google habe ich unzählige Male aufgerufen doch ohne Ergebnis.


    Mit Do, Do Events While und Loop wartet er einfach nicht lange genug. Er meint zwar der Browser wäre fertig geladen, ist er aber nicht. Ich bräuchte sowas wie eine Abfrage ob der Browser zu 100% geladen ist und dann erst macht er weiter.


    Könnte man das ganze eig. nicht anstatt des WebBrowsers mit dem Inet Komponente machen? Würde schneller und besser gehen.

  • pixelg0tt;23554 schrieb:

    Könnte man das ganze eig. nicht anstatt des WebBrowsers mit dem Inet Komponente machen? Würde schneller und besser gehen.


    Ich denke mal du hast die variante vom Vorposter schon probiert, oder? Ich persönlich würde es auch mit einem Socket anstatt dem Webbrowser machen. Das ist auch viel schneller (es werden keine Bilder geladen) und natürlich besserer stil.
    Das einzige was du tun musst, ist die GET bzw POST variablen einsetzen und dann mitsamt HTTP-Header abschicken.


    lg

  • Ich hab das ganze jetzt versucht so zu lösen:



    Ich bekomme aber dennoch einen Error von wegen End If ohne If Block.
    Wenn ich das letzte End If entferne bekomme ich einen fehler von wegen Do ohne Loop


    Wenn ich das end if drin lasse und loop unter den do Events schreibe kommt kein error aber das tool wartet nicht lange genug bis der browser fertig geladen ist um den quelltext auszulesen...



    Nop0x90;23559 schrieb:

    Ich denke mal du hast die variante vom Vorposter schon probiert, oder? Ich persönlich würde es auch mit einem Socket anstatt dem Webbrowser machen. Das ist auch viel schneller (es werden keine Bilder geladen) und natürlich besserer stil.
    Das einzige was du tun musst, ist die GET bzw POST variablen einsetzen und dann mitsamt HTTP-Header abschicken.


    lg


    Genau das hab ich mir auch gedacht .. es geht schneller und man kann auch schneller den Quelltext auslesen und ich hätte das oben genannte Problem nicht. Nur habe ich leider noch nie mit Get bzw Post gearbeitet und müsste dazu ein Tutorial finden. In einem Rapidshare Checker Source hab ich gesehen wie er sich über die Inet Komponente einloggt .. also "https://ssl.rapidshare.com/premiumzone.cgi?login=username&password=hfhf" aber so geht das nicht bei jeder seite glaub ich .. oder doch?

  • ich kann (gottseidank) kein VB aber ich denke:

  • Genau so hab ich es ja auch. Aber komischerweise lässt er den Browser nicht ganz fertig laden sodass InStr nicht den Quelltext von der gewünschten (eingeloggten) Seite auslieÃ?t sondern den der (noch nicht eingeloggten) Seite.


    Wäre das mit der Inet Komonente kein Problem?


    btw: Ich habe mir schon lange überlegt eine weitere Programmiersprache zu erlernen .. nur weiss ich nicht ob ich Delphi oder VB Net nehmen soll ..

  • pixelg0tt;23562 schrieb:

    btw: Ich habe mir schon lange überlegt eine weitere Programmiersprache zu erlernen .. nur weiss ich nicht ob ich Delphi oder VB Net nehmen soll ..


    Naja.. Also wenn schon denn schon... Dann lern Delphi. In Delphi wäre das sehr einfach mit einer Indy-Komponente zu realisieren aber in VB gibt es sicher was vergleichbares. Die Webbrowser controls sind eh ein krampf...