簡體   English   中英

WSE 3.0 Windows 7兼容性

[英]WSE 3.0 Windows 7 Compatibility

我有一個.NET 2.0應用程序,它使用WSE 3.0通過SSL進行Web服務調用。 該應用程序完美的作品在Windows XP我申請這說明一個注冊表修復后這里

修復程序說使用UseScsvForTls條目DWORD值以及以下注冊表路徑中的非零值來發送SCSV以在TLS中發送信號:HKEY_LOCAL_MACHINE \\ System \\ CurrentControlSet \\ Control \\ SecurityProviders \\ SCHANNEL

當我嘗試在Windows 7計算機上運行相同的應用程序(沒有任何注冊表修復程序)時,出現以下錯誤:

The underlying connection was closed: An unexpected error occurred on a send.-   at        System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)

at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)

at Microsoft.Web.Services3.WebServicesClientProtocol.GetResponse(WebRequest request, IAsyncResult result)

at Microsoft.Web.Services3.WebServicesClientProtocol.GetWebResponse(WebRequest request)

at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)  

我的問題是:我是否可以在Windows 7上使用注冊表修復來修復此錯誤? 還是Windows 7不支持WSE?

事實證明,該問題確實與XP中需要注冊表修復的問題相似。 我使用Wireshark來檢查SSL請求和響應。 事實證明,我調用的Web服務使用舊版本的SSL(版本3.0),Windows 7上默認不再支持該版本。

解決方法是添加以下代碼行,以強制客戶端使用SSLv3:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM