症狀
啟動或設定 Enterprise Single Sign-On Service (ENTSSO) 時,您可能會收到下列其中一個錯誤訊息:
Windows 無法在本機電腦上啟動企業單一 Sign-On 服務。
錯誤0x80131700:0x80131700
錯誤:無法連絡 SSO 伺服器「localhost」。 檢查是否已設定 SSO,以及 SSO 服務是否在該伺服器上執行。
(RPC: 0x800706D9:端點對應程式沒有可用的端點。)
無法建立 SSOSQL。 若要修正此問題,請重新安裝 SSO,或從 Visual Studio 命令提示字元嘗試執行「regasm SSOSQL.dll」。
錯誤碼:0x80131700
無法連線至 SQL Server 'SQLServerName' 上的 SQL 資料庫 'SSODB'
0x80131700 (Win32)
注意:ENTSSO 是 BizTalk 和 HIS 的必要服務。 因此,這些服務也無法啟動。
原因
安裝 .NET Framework 4.0 之後會發生這個問題。 ENTSSO 用來存取SQL Server (SSOSQL.dll) 的組件註冊並未指定正確的.NET Framework版本。 安裝 .NET Framework 4.0 時,組件會嘗試使用較新的架構,然後無法載入。
解決方式
若要解決此問題,請在 ENTSSO 伺服器上安裝下列連結中提供的修正程式:
Microsoft Enterprise Single Sign-On v4 (KB2252691) 的更新
此 Hotfix 會使用正確的 .NET Framework 版本更新 ENTSSO 組件註冊。
先決條件
您必須擁有 Enterprise Single Sign-On Service 4.0 才能套用此修正程式。
重新啟動需求
套用此 Hotfix 之後,您不必重新啟動電腦。
更多資訊
您也可以使用 regasm 工具重新註冊 SSOSQL 組件來修復此問題。 Regasm.exe 隨附於 .Net Framework 中。
32 位元伺服器
1. 開啟命令視窗
2. 前往 C:\Windows\Microsoft.NET\Framework\v2.0.50727
3. 類型: regasm “C:\Program Files\Common Files\Enterprise Single Sign-On\ssosql.dll”
64 位元伺服器
1. 開啟命令視窗
2. 前往 C:\Windows\Microsoft.NET\Framework64\v2.0.50727
3. 輸入下列每一項,然後按 ENTER:
32 位元: regasm “C:\Program Files\Common Files\Enterprise Single Sign-On\win32\ssosql.dll”
64 位元: regasm “C:\Program Files\Common Files\Enterprise Single Sign-On\ssosql.dll”
注意:在 64 位元伺服器上,需要針對 32 位元和 64 位元版本的 ssosql.dll 執行 regasm。