vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: VB6-Windows7-64Bit + Browser 
Autor: Franki
Datum: 20.03.14 02:16

Hallo,

Zitat:


Im Programm wird der Internet Explorer per Code angesprochen,


Mit welchem Code bzw. welcher Methode genau?
Per CreateObject...

Zitat:


geöffnet,
eine URL-Angegeben - und der Body-Text soll ausgelesen werden
und wieder geschlossen werden.

Wird denn die URL geladen?
Wie ermittelt du den Inhalt der zwischen <body>...</body> steht aus dem Quelltext der Seite? Über das Objektmodell oder per String Analyse?

Zitat:


Dies funktioniert ab Windows7 mit dem IE 9/10 nicht mehr.

Fehlermeldung? Passiert gar nichts? Was genau funktioniert nicht?

Zitat:


Habe versucht nun das WebControl von VB6 zu benutzen -
jedoch nicht erfolgreich.


Also das funktioniert bei mir auch bis zu Win8 (egal ob 32 oder 64er Version)

Kurzform ohne Fehlerbehandlung:

Dim bLoaded As Boolean
 
Private Sub Command_Irgendwas_Click()
    bLoaded = False
    WebBrowser1.Navigate "http://www..."
 
    ' Warten, bis Webseite vollständig geladen wurde
    Do While Not bLoaded
      ' irgendwelcher Code für Statusanzeige, Fortschrittsanzeige Fehlermeldung 
      ' oder sonst was
      ' DoEvents bei Bedarf
    Loop
End Sub
 
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, _
  URL As Variant)
 
  ' Webseite wurde vollständig geladen
  bLoaded = True
 
    With WebBrowser1.Document
        Serverantwort = .documentElement.outerHTML
    End With
 
    ' Überflüssiges HTML entfernen
    Serverantwort = Replace(Serverantwort, "<HTML>", "")
    Serverantwort = Replace(Serverantwort, "</HTML>", "")
    Serverantwort = Replace(Serverantwort, "<HEAD>", "")
    Serverantwort = Replace(Serverantwort, "</HEAD>", "")
    Serverantwort = Replace(Serverantwort, "<BODY>", "")
    Serverantwort = Replace(Serverantwort, "</BODY>", "")
End Sub
Du musst aber zwingend die zurückgegebene URL in der Sub prüfen, denn wenn es einen 404er oder sonst was gibt kann die anders sein als die aufgerufene und dann bringt dir der Quelltext ja rein gar nichts und du musst dem User einen Hinweis geben, dass etwas nicht geklappt hat.

Wie gesagt, das war die Kurzform, bei mir funktioniert das in einem VB6 Programm auch heute noch bis zu Win8.

Aber wie gesagt, ohne konkrete Angaben (Code) was du machst, kann man nur Vermutungen anstellen was bei dir schief läuft.

Gruß
Frank













alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
VB6-Windows7-64Bit + Browser1.592bert13.03.14 16:53
Re: VB6-Windows7-64Bit + Browser772Franki20.03.14 02:16

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel