![]() |
[Visual Basic] Datei herunterladen und Cookies verwenden
Guten Morgen!
Vielleicht kann man mir ja hier helfen :-) Ich habe die Aufgabe eine Datei von einem Server über http, bzw. https herunterzuladen. Ich habe dazu die URL, ggf. AUTH Username und AUTH Password, sowie notwendige Cookieinhalte und die dazugehörigen Domains. Nun kriege ich das leider absolut nicht hin, meiner Funktion ein Cookie zu übergeben. Wie funktioniert das eigentlich? Mein Code sieht im groben aus aus:
Code:
Gebe ich eine URL ein, die nicht durch Cookies geschützt ist, funktioniert das einwandfrei... Der Download funktioniert also...
Private Function DownloadDATANORM(File As oFile) As String
'Const INET_RELOAD = &H80000000 Const INTERNET_FLAG_NO_COOKIES = &H80000 Dim hInet As Long Dim hURL As Long Dim Buffer As String * 2048 Dim bytes As Long Dim i As Integer ShowLoading "Folgende Datei wird heruntergeladen:" + vbCrLf + File.FileName 'Cookies setzen For i = 0 To UBound(File.Cookies) If (File.Cookies(i).Content <> "") Then Call InternetSetCookie(File.Cookies(i).Domain, "DATANORM", File.Cookies( _ i).Content) End If Next 'Verbindung aufbauen hInet = InternetOpen("DATANORM Online", OpenType, vbNullString, vbNullString, _ 0) hURL = InternetOpenUrl(hInet, File.URL, vbNullString, 0, _ INTERNET_FLAG_NO_COOKIES, 0) 'Datei herunterladen intFileNum = FreeFile Open App.Path + "\" + File.FileName For Binary As intFileNum Do InternetReadFile hURL, Buffer, Len(Buffer), bytes If (bytes = 0) Then Exit Do Put #intFileNum, , Left$(Buffer, bytes) Loop 'Wieder alles schließen Close intFileNum InternetCloseHandle hURL InternetCloseHandle hInet End Function Gebe ich nun aber eine durch Cookies geschützte Datei ein, bekomme ich vom Server nur die Antwort "Fehler" (das ist eine Testumgebung, daher so eine aussagekräftige Fehlermeldung ) Hat da jemand eine Idee? |
Re: [Visual Basic] Datei herunterladen und Cookies verwenden
Hast du mal im Debug geschaut ob hier
Code:
File.Cookies(i).Domain Daten enthält?
'Cookies setzen
For i = 0 To UBound(File.Cookies) If (File.Cookies(i).Content <> "") Then Call InternetSetCookie(File.Cookies(i).Domain, "DATANORM", File.Cookies( _ i).Content) End If Next |
Re: [Visual Basic] Datei herunterladen und Cookies verwenden
Jau, die Daten setze ich auch selbst in die Variablen... Sind also auch richtig drin.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz