[WSE]手動安裝Web Services Enhancements 2.0 SP3
前言
因為系統有使用WSE 2.0,所以User在使用系統時需要安裝Web Services Enhancements 2.0 Runtime,
但是在有台XP的PC上卻無法安裝,會出現以下的錯誤訊息!
解析問題
看起來都像是沒有權限的樣子,但是User卻可以在System32的目錄新增檔案及目錄。
原本安裝程式是放在桌面上安裝,結果有錯誤!
請User將安裝程式放在C:\下安裝,結果還是錯誤!
尋找辦法
如果安裝程式無法安裝,那就使用手動安裝,查看WSE的安裝目錄中,有一個Microsoft.Web.Services2.dll及WSE.config,
那應該直接將Microsoft.Web.Services2.dll放到執行檔的相同目錄試試看!
結果卻發生了「WSE032: There was an error loading the microsoft.web.services2 configuration section.」錯誤!
Microsoft.Web.Services2, Version=2.0.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
logged by MyClass, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null on xxxx [PID:1712]
at System.Configuration.ConfigurationRecord.GetFactory <System.Configuration.ConfigurationException>
無法建立 Microsoft.Web.Services2.Configuration.WebServicesConfiguration, Microsoft.Web.Services2
, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
at Microsoft.Web.Services2.Configuration.WebServicesConfiguration.Initialize <System.Configuration.ConfigurationException>
WSE032: There was an error loading the microsoft.web.services2 configuration section.
at Microsoft.Web.Services2.Configuration.WebServicesConfiguration.Initialize()
at Microsoft.Web.Services2.Referral.ReferralCache.Initialize()
at Microsoft.Web.Services2.Referral.ReferralCache.ResolvePath(Uri uri)
at Microsoft.Web.Services2.WebServicesClientProtocol.set_Destination(EndpointReference value)
at Microsoft.Web.Services2.WebServicesClientProtocol.set_Url(String value)
判斷問題
發現無法建立Configuration,其中發現我的版本是2.0.3.0而要建立的是2.0.0.0!
所以將系統的config改成2.0.3.0,就可以順利執行!<section name="microsoft.web.services2" type="Microsoft.Web.Services2.Configuration.WebServicesConfiguration, Microsoft.Web.Services2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
改成
<section name="microsoft.web.services2" type="Microsoft.Web.Services2.Configuration.WebServicesConfiguration, Microsoft.Web.Services2, Version=2.0.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
結論
手動安裝DLL後,還要讓使用的版本與config指定的版本相符才能讓系統運作正常!
使用安裝程式安裝的話,可能同時有安裝WSE的Policy組件,所以版本不符還能對到最新的版本!
Hi,
亂馬客Blog已移到了 「亂馬客 : Re:從零開始的軟體開發生活」
請大家繼續支持 ^_^