如果你运行时也遇到“RPC服务器不可用”的故障提示,不妨试试我们下面的办法。 ' S4 k" `: q8 s* L* v
依次点击“管理工具→服务→Remote Procedure Call→属性”,其默认启动类别是“自动”,但选项是灰色的(不可用状态),点击标签“登录”,将硬件配置文件服务禁用,重新启动系统。
& B9 s/ A& C( t7 W0 J
$ ~/ F+ T# S& y8 W) s6 n' x 方法一:修改注册表
! r9 ]4 x0 Y& h. {4 n V2 R. T% D1 }9 _8 e7 V5 I
运行注册表编辑器,打开HKEY_LOCAL_MACHINEsystemCurrentControl-SetServicesRpcSs分支,将Start项的值由“4”修改为“2”,即把启动类型设为自动,重新启动系统即可。
9 ^' c1 e% P2 W( q* w3 o& T/ E
4 @" U2 S o' J1 d 方法二:使用“SC”命令
+ A3 W3 ]* d- [/ t
* t" e, \ z( I; u9 o 进入“命令提示符”窗口,键入“sc config RpcSs start=auto”命令,系统会显示“SC ChangeServiceConfig SUCCESS”,这样就可以成功启用RPC服务。2 l; Z) m F# @
( U) Q: j' x t( N
方法三:使用故障恢复控制台
& b4 y& A( K* X, w
4 y" ~( E! r5 e7 W& G9 A2 w 以Windows 2003系统为例,用安装光盘启动,系统进入到Windows 2003安装界面,按下“R”键登录到故障恢复控制台。在故障恢复控制台下,键入“enable RpcSs service_auto_start”命令,然后再键入“exit”命令,重新启动系统,以正常模式登录,即可成功启用RPC服务。
9 ~* Q# z: n: Q' y4 p4 m5 ]
1 X- K$ k U! W0 A$ ~ 笔者使用上面的几种方法都不成功,看来只有自己动手解决了。我想注册表中的某些键值一定要变,这样才能启用。' F; }" }1 K6 `8 |0 e
, H0 Y! N/ i+ p9 z, {" P+ h3 Y# M7 O 把禁用前的备份注册表恢复到被禁用后的注册表中,提示无法导入,不成功。无法启用。( }7 o- D# c' p2 a' [# ~
% p" @* `' e, B$ ]) W. Q$ \ 把禁用前和禁用后的两个注册表(只取HKEY_LOCAL_MACHINESYSTEM分支)内容转化成Word文档,再使用Word中的“比较并合并文档”功能,就能自动找到两个注册表的不同之处。我通过比较分析,发现禁用后的注册表中有以下分支:
E$ ~. i2 L$ {- k, Y% ~$ p7 e5 h L6 ^
1.HKEY_LOCAL_MACHINE\SYSTEM\CurrntControlSet\Hardware Profiles\0001\System\CurrentControlSet\Enum\ROOT\LEGACY_RPCSS
( d* Q, Y5 X2 S; |# @' N0 q" I: G, O. t0 d4 H$ l+ Z
2.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current\System\CurrentControlSet\Enum\ROOT\LEGACY_RPCSS8 v; C/ D `6 @2 E+ R% X8 x) ^2 n
- X x" g9 @) L' | 禁用前的注册表中没有以上两个分支。通过进一步操作,发现只要删除第1个分支即可重新起用RPC服务。5 C/ |% v) p+ G U% D. E, F: f
; Y- J0 \9 v/ u% S& \9 n 原来上面三种方法,只能应用于把RPC服务启动类型改为禁止后的情况。笔者关闭RPC服务不是改变启动类型,而是禁止与之相关联的硬件配置文件服务,“Start”项的值仍是“2”,没有变。所以先要将硬件配置文件服务启用,才能启用RPC服务。 |