/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
underlig problem med inet
Fra : Mogens Dyhre Hansen


Dato : 05-04-03 08:20

Hej

Nu har rodet så længe med den kode at jeg må ha expert hjælp!

Selve den handling som foregår:

Jeg henter en url fra en data base og så køre den fint igennem
Inet1_StateChanged og så sker så en behandling af det modtagede data og
det virker godt nok men anden gang den henter en URL fra databasen fare
den forbi Inet1_StateChanged og der er ikke modtaget noget data, så
starter den med runsearch igen(Mit valg) og så kommer der fint data. Med
andre ord hvorfor henter den kun hveranden? Det kan jeg ikke lige helt
forstå.! og ikke nok med det hvis jeg lader den køre fire gange(den køre
indtil cancel eller der ikke er flere url'er) så sker det at det i
strengen strText er det samme som fire 4 URL'er siden, altså som om den
ikke blev færdig med som den som det lykkedes at hente data fra.! Det
skal lige siges at jeg nulstiller alle mine text felter med = "" inden
RunSearch køre igen.


Public Sub RunSearch()

GetDB (strDBURL)

If txtURL.Text = "" Then
MsgBox "Search Finished"
Exit Sub
End If
Call inet
End Sub
------------------------------------------------------------
Public Sub inet()

Inet1.AccessType = icDirect
Inet1.Protocol = icHTTP
Inet1.RemotePort = 80
Inet1.RequestTimeout = 40

Call Inet1.Execute(txtURL.Text, "GET", , "user-agent:Mozilla/4.0;)"
& vbCrLf)

End Sub
---------------------------------------------------------------
Private Sub Inet1_StateChanged(ByVal State As Integer)

lChunkSize = 2048
ProgressBar1.Value = 0.001
lblProgressinfo.Caption = 0
m_lngDocSize = 0

txtStateline = txtStateline & State & vbCrLf

If State <> 0 Then
lblInetError = "ErrorCode: " & Inet1.ResponseCode & _
" : " & Inet1.ResponseInfo

End If


Select Case State

Case icResponseCompleted
On Error GoTo ErrorHandler
lblServerRapport = Inet1.GetHeader() 'Skrives i Textbox
strDate = Inet1.GetHeader("Last-Modified")

On Error Resume Next ' Skal være der ellers kommer der ingen
html
m_lngDocSize = CLng(Inet1.GetHeader("Content-Length"))



Do 'retrieve data from the buffer


'DoEvents
strBuffer = Inet1.GetChunk(CLng(lChunkSize), icString)
If m_lngDocSize > 0 Then
If Len(strBuffer) > 0 Then
sngProgerssValue = Int((Len(strText) /
m_lngDocSize) * 100) 'get percent value
End If 'update the label control with new caption
lblProgressinfo.Caption = "Downloaded " &
CStr(Len(strText)) & " bytes (" & CStr(sngProgerssValue) & "%)" 'update
the PregressBar control with new value
ProgressBar1.Value = sngProgerssValue
End If
strText = strText & strBuffer

Loop Until Len(strBuffer) = 0
End Select
lblSize = CStr(Len(strText))
lblLastmodif = strDate
txtHTML.Text = strText
BaseURL = txtURL.Text
BaseURL = Trim(BaseURL)

'Case icResponseReceived
'On Error GoTo ErrorHandler




If Inet1.StillExecuting <> False Then
lblRun = "Kører"
End If

If Inet1.StillExecuting = False Then
lblRun = "Stoppet"
Call GetLinks(BaseURL, strText, strDate)
strBuffer = 0
'Inet1.Cancel har jeg prøvet at indsætte med gør ingen
forskel


Exit Sub

End If



ErrorHandler:
Select Case Err.Number ' Evaluate error number
Case 35761 ' Timed Out
lblInetError = "Err : ***** Timout ***** "
Case Else
lblInetError = "Trappable Error : " + Str(Err.Number) +
Err.Description
End Select


 
 
Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408879
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste