IIS下啟用RPC服務的操作方法
如果你運行IIS時也遇到“RPC服務器不可用”的故障提示,不妨試試我們下面的辦法。
依次點擊“管理工具→服務→RemoteProcedureCall→屬性”,其默認啟動類別是“自動”,但選項是灰色的(不可用狀態),點擊標簽“登錄”,將硬件配置文件服務禁用,重新啟動系統。
方法一:修改註冊表
運行註冊表編輯器,打開HKEY_LOCAL_MACHINEsystemCurrentControl-SetServicesRpcSs分支,將Start項的值由“4”修改為“2”,即把啟動類型設為自動,重新啟動系統即可。FTP
方法二:使用“SC”命令
進入“命令提示符”窗口,鍵入“scconfigRpcSsstart=auto”命令,系統會顯示“SCChangeServiceConfigSUCCESS”,這樣就可以成功啟用RPC服務。
方法三:使用故障恢復控制臺
以Windows2003系統為例,用安裝光盤啟動,系統進入到Windows2003安裝界面,按下“R”鍵登錄到故障恢復控制臺。在故障恢復控制臺下,鍵入“enableRpcSsservice_auto_start”命令,然後再鍵入“exit”命令,重新啟動系統,以正常模式登錄,即可成功啟用RPC服務。
筆者使用上面的幾種方法都不成功,看來只有自己動手解決了。我想註冊表中的某些鍵值一定要變,這樣才能啟用。
把禁用前的備份註冊表恢復到被禁用後的註冊表中,提示無法導入,不成功。無法啟用。
把禁用前和禁用後的兩個註冊表(只取HKEY_LOCAL_MACHINESYSTEM分支)內容轉化成Word文檔,再使用Word中的“比較並合並文檔”功能,就能自動找到兩個註冊表的不同之處。我通過比較分析,發現禁用後的註冊表中有以下分支:
1、HKEY_LOCAL_MACHINESYSTEMCurrntControlSetHardwareProfiles001SystemCurrentControlSetEnumROOTLEGACY_RPCSS
2、HKEY_LOCAL_MACHINESYSTEMCurrentControlSetHardwareProfilesCurrentSystemCurrentControlSetEnumROOTLEGACY_RPCSS
禁用前的註冊表中沒有以上兩個分支。通過進一步操作,發現只要刪除第1個分支即可重新起用RPC服務。
原來上面三種方法,只能應用於把RPC服務啟動類型改為禁止後的情況。筆者關閉RPC服務不是改變啟動類型,而是禁止與之相關聯的硬件配置文件服務,“Start”項的值仍是“2”,沒有變。所以先要將硬件配置文件服務啟用,才能啟用RPC服務。
IIS下啟用RPC服務的操作方法