Guten Abend zam,
ich versuch gerade mal die Cookies die ich durch Aktionen, Anmeldungen usw. im WebBrowser-Control bekommen habe auf meinen WebClient zu übertragen, bzw. weiterzugeben.
WebClient
Doch leider bekomme ich den angehangenen Fehler bei der
Geprüft ob alle names & values befüllt sind habe ich.
EDIT:
Und wenn ich den WebBrowser (da er die Cookies ja hat) einfach direkt die (getestete und funktionierende) URL besuchen lasse (wo ein Download starten sollte), kommt dann Problem aus Bild 2.
Leer, nicht anwählbar, keinen Dateinamen, ??
Die Google Suche ergab sonst noch folgendes -> Man solle die InternetGetCookieEx-Methode verwenden, aber das bekomme ich nicht so ganz hin :/.
ich versuch gerade mal die Cookies die ich durch Aktionen, Anmeldungen usw. im WebBrowser-Control bekommen habe auf meinen WebClient zu übertragen, bzw. weiterzugeben.
VB.NET-Quellcode
- Public Class CookieAwareWebClient
- Inherits WebClient
- Public Property CookieContainer() As CookieContainer
- Get
- Return m_CookieContainer
- End Get
- Set
- m_CookieContainer = Value
- End Set
- End Property
- Private m_CookieContainer As CookieContainer
- Public Property Uri() As Uri
- Get
- Return m_Uri
- End Get
- Set
- m_Uri = Value
- End Set
- End Property
- Private m_Uri As Uri
- Public Sub New()
- Me.New(New CookieContainer())
- End Sub
- Public Sub New(cookies As CookieContainer)
- Me.CookieContainer = cookies
- End Sub
- Protected Overrides Function GetWebRequest(address As Uri) As WebRequest
- Dim request As WebRequest = MyBase.GetWebRequest(address)
- If TypeOf request Is HttpWebRequest Then
- TryCast(request, HttpWebRequest).CookieContainer = Me.CookieContainer
- End If
- Dim httpRequest As HttpWebRequest = DirectCast(request, HttpWebRequest)
- httpRequest.AutomaticDecompression = DecompressionMethods.GZip Or DecompressionMethods.Deflate
- Return httpRequest
- End Function
- Protected Overrides Function GetWebResponse(request As WebRequest) As WebResponse
- Dim response As WebResponse = MyBase.GetWebResponse(request)
- Dim setCookieHeader As [String] = response.Headers(HttpResponseHeader.SetCookie)
- If setCookieHeader IsNot Nothing Then
- 'do something if needed to parse out the cookie.
- If setCookieHeader IsNot Nothing Then
- Dim cookie As New Cookie()
- 'create cookie
- Me.CookieContainer.Add(cookie)
- End If
- End If
- Return response
- End Function
- End Class
Doch leider bekomme ich den angehangenen Fehler bei der
DownloadFile
-Methode.Geprüft ob alle names & values befüllt sind habe ich.
EDIT:
Und wenn ich den WebBrowser (da er die Cookies ja hat) einfach direkt die (getestete und funktionierende) URL besuchen lasse (wo ein Download starten sollte), kommt dann Problem aus Bild 2.
Leer, nicht anwählbar, keinen Dateinamen, ??
Die Google Suche ergab sonst noch folgendes -> Man solle die InternetGetCookieEx-Methode verwenden, aber das bekomme ich nicht so ganz hin :/.
Polling is trolling!
Achtung: Ich habe die komische Angewohnheit, simple Dinge zu verkomplizieren..
Achtung: Ich habe die komische Angewohnheit, simple Dinge zu verkomplizieren..
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Rootbob91“ ()