Hallo,
ich möchte folgenden Code ausführen:
Wenn sich die Prozedur Test und die Funktion AcceptCert in der Klasse einer Windows-Form befinden, geht es problemlos. Stehe hingegen beides in einer "normalen" Klasse, hängt es ca. 100 Sekunden hier:
und bringt dann den Fehler: System.Net.WebException: "Timeout für Vorgang überschritten"
Es handelt sich um dasselbe VB-Projekt.
Woran kann das liegen?
Carsten
ich möchte folgenden Code ausführen:
VB.NET-Quellcode
- Friend Sub Test()
- System.Net.ServicePointManager.ServerCertificateValidationCallback = New System.Net.Security.RemoteCertificateValidationCallback(AddressOf AcceptCert)
- Dim req As System.Net.WebRequest = CType(System.Net.WebRequest.Create("https://machine1/api/geraetedaten"), System.Net.WebRequest)
- req.Credentials = New System.Net.NetworkCredential("webserver", "12345678")
- req.Method = "POST"
- req.ContentType = "application/x-www-form-urlencoded"
- Dim enc As System.Text.UTF8Encoding
- enc = New System.Text.UTF8Encoding()
- Dim postdata As String
- Dim postdatabytes As Byte()
- postdata = "complete=true"
- postdatabytes = enc.GetBytes(postdata)
- req.ContentLength = postdatabytes.Length
- Dim dataStream As System.IO.Stream = req.GetRequestStream()
- dataStream.Write(postdatabytes, 0, postdatabytes.Length)
- Dim response As System.Net.WebResponse
- response = req.GetResponse()
- Dim strStatus As String = CType(response, System.Net.HttpWebResponse).StatusDescription
- Dim strResponse As String = response.Headers.ToString
- ' Clean up the streams and the response.
- response.Close()
- dataStream.Close()
- End Sub
- Private Function AcceptCert(ByVal sender As Object, ByVal cert As System.Security.Cryptography.X509Certificates.X509Certificate,
- ByVal chain As System.Security.Cryptography.X509Certificates.X509Chain,
- ByVal errors As System.Net.Security.SslPolicyErrors) As Boolean
- Return True
- End Function
Wenn sich die Prozedur Test und die Funktion AcceptCert in der Klasse einer Windows-Form befinden, geht es problemlos. Stehe hingegen beides in einer "normalen" Klasse, hängt es ca. 100 Sekunden hier:
und bringt dann den Fehler: System.Net.WebException: "Timeout für Vorgang überschritten"
Es handelt sich um dasselbe VB-Projekt.
Woran kann das liegen?
Carsten
--------
Lieber inkompetent als inkontinent
Lieber inkompetent als inkontinent