vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 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: Ich habe ein großen Prob mit dem Internet Transfer Controle. 
Autor: ModeratorDieter (Moderator)
Datum: 28.10.01 00:19

Hallo Marcel,

so, nun habe ich gerade mal ein bisschen Freetime für Dich

Nach dem Ausführen der Execute-Methode musst Du warten, bis die Anfrage vollständig bearbeitet und beendet wurde, ehe Du die nächste Anfrage losschickst.

D.h., Du musst im Inet1_StateChanged-Ereignis den Status prüfen.
Liefert State den Wert icResponseCompleted wurde die Anfrage vollständig bearbeitet und Du kannst die nächste Anfrage ausführen. Zusätzlich sollte im Inet1_StateChanged-Ereignis auch geprüf werden, ob ein fehler aufgetreten ist. Hierzu State auf den Wert icError prüfen.

Ich habe mal ein Beispiel zusammengestellt:

Benötigt wird eine Form, ein MultiLine-Textfeld (txtData), ein normales Textfeld (txtURL), sowie ein CommandButton (Command1)
<code>
Option Explicit
 
<font color=green>' Datenvariable</font>
Dim sData As String
 
<font color=green>' Anfrage absenden (hier URL laden und Seiten-Quelltext 
' anzeigen)</font>
Private Sub Command1_Click()
  Screen.MousePointer = 11
  With Inet1
    sData = ""
    .Tag = "Loading"
    .Execute txtURL.Text
    Do
      DoEvents
    Loop Until .Tag <> "Loading"
 
    If .Tag = "Ready" Then
      <font color=green>' Anfrage korrekt bearbeitet
      ' Seiten-Quelltext anzeigen</font>
      txtData.Text = sData
    ElseIf .Tag = "Error" Then
      <font color=green>' Fehler</font>
      MsgBox "Es ist ein Fehler aufgetreten!"
    End If
  End With
  Screen.MousePointer = 0
End Sub
 
<font color=green>' Status abfragen</font>
Private Sub Inet1_StateChanged(ByVal State As Integer)
  Dim vData As Variant
  Dim bReady As Boolean
 
  With Inet1
    Select Case State
      Case icError
        <font color=green>' Es ist ein Fehler aufgetreten</font>
        .Tag = "Error"
      Case icResponseCompleted
        <font color=green>' Segment holen</font>
        vData = .GetChunk(1024, icString)
        DoEvents
 
        Do
          sData = sData & vData
          <font color=green>' Nächstes Segment holen</font>
          vData = .GetChunk(1024, icString)
          DoEvents
 
          If Len(vData) = 0 Then bReady = True
        Loop Until bReady
        .Tag = "Ready"
     End Select
   End With
End Sub</code>
Ich denke, Du solltest jetzt in der Lage sein, obigen Code für Deine For...Next Schleife anzuwenden

Cu
Dieter
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Ich habe ein großen Prob mit dem Internet Transfer Controle.73VbJunky27.10.01 15:11
Re: Ich habe ein großen Prob mit dem Internet Transfer Contr...223ModeratorDieter28.10.01 00:19
Danke!39VbJunky29.10.01 15:28

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