我們有一個 Microsoft Access 應用程式,它整合了我們在 eBay 上的許多活動。我通過 Access 參考的幾個 com dll 來做到這一點。應用程式的一部分將我們庫存中的串列發布到 eBay。這已經作業了至少 8 年。最近 eBay 將其服務器更改為需要 TLS 1.2,我們開始收到“請求中止:無法創建 SSL/TLS 安全通道”訊息。查了一下,MS 說將 dll 專案升級到 Framework 4.7 或更高版本將修復。我升級了解決方案框架并重新編譯。
當我從 VS 中構建的 win 表單測驗應用程式呼叫時,升級后的 dll 可與 eBay 一起使用。當我從 Access 應用程式呼叫時,我仍然收到 TLS 錯誤。當我在 Fiddler 中查看與 eBay 的通信時,從 .NET win 表單測驗應用程式呼叫時來自 dll 的呼叫使用 TLS 1.2。當從 Access 呼叫 dll 時,它仍在使用 TLS 1.0。Access 應用程式和 .NET 測驗應用程式都參考相同的 dll 檔案。
問題:呼叫 dll 的應用程式是否會影響正在使用的 TLS 版本?關于什么可能導致同一個 dll 使用不同的 TLS 版本的任何想法?
uj5u.com熱心網友回復:
嗯,我不認為 VBA/Office 作為主機程式會改變 TLS 設定。但您可以考慮嘗試此注冊表編輯:
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001
我相信您還必須重新啟動計算機才能使上述生效。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/460170.html
