如果你运行时也遇到“RPC服务器不可用”的故障提示,不妨试试我们下面的办法。 6 [: I- ^% y( J r! A' V5 {
依次点击“管理工具→服务→Remote Procedure Call→属性”,其默认启动类别是“自动”,但选项是灰色的(不可用状态),点击标签“登录”,将硬件配置文件服务禁用,重新启动系统。# A5 \: l4 x" \& D
" V( V% J, {0 N! S 方法一:修改注册表( y' |6 {. G2 _& f
! A4 ?1 C7 v. i 运行注册表编辑器,打开HKEY_LOCAL_MACHINEsystemCurrentControl-SetServicesRpcSs分支,将Start项的值由“4”修改为“2”,即把启动类型设为自动,重新启动系统即可。/ A% y4 _- k- |3 d8 ^8 C! e3 Q
6 h$ u4 X, }' f6 e' X2 P
方法二:使用“SC”命令/ h: }9 E$ O% A5 K: q$ T
6 {/ w: D0 i( P0 U: K. i
进入“命令提示符”窗口,键入“sc config RpcSs start=auto”命令,系统会显示“SC ChangeServiceConfig SUCCESS”,这样就可以成功启用RPC服务。- s/ F ]6 l t9 y; l# N, n1 f
6 O! N' |; U: K/ P9 l+ Z+ \! [- g
方法三:使用故障恢复控制台4 O3 x5 X8 K5 N/ ^9 }
6 a4 E$ l5 K) T& u# i0 v
以Windows 2003系统为例,用安装光盘启动,系统进入到Windows 2003安装界面,按下“R”键登录到故障恢复控制台。在故障恢复控制台下,键入“enable RpcSs service_auto_start”命令,然后再键入“exit”命令,重新启动系统,以正常模式登录,即可成功启用RPC服务。
p/ r, j' H% ~- p6 q$ Y, C, U2 J7 s/ o8 @/ \: C
笔者使用上面的几种方法都不成功,看来只有自己动手解决了。我想注册表中的某些键值一定要变,这样才能启用。
1 [& I" R% F: g+ B6 E3 G
$ l: m7 a9 q8 s7 ]' D5 { 把禁用前的备份注册表恢复到被禁用后的注册表中,提示无法导入,不成功。无法启用。6 i* u! r. N: I) Q% [1 N: {
9 K* q @6 m& `/ d. p
把禁用前和禁用后的两个注册表(只取HKEY_LOCAL_MACHINESYSTEM分支)内容转化成Word文档,再使用Word中的“比较并合并文档”功能,就能自动找到两个注册表的不同之处。我通过比较分析,发现禁用后的注册表中有以下分支:0 f/ R. ?3 P4 J9 l# M
. n1 w. f8 _" q, ?" e; C 1.HKEY_LOCAL_MACHINE\SYSTEM\CurrntControlSet\Hardware Profiles\0001\System\CurrentControlSet\Enum\ROOT\LEGACY_RPCSS
( [# x. s7 F$ x& X5 A/ t6 X6 k" C
% k5 P- \7 B1 Z* u5 O' ? 2.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current\System\CurrentControlSet\Enum\ROOT\LEGACY_RPCSS6 N t& s! v, {+ K$ w' j9 L
, U c6 y" E4 E! J t1 i 禁用前的注册表中没有以上两个分支。通过进一步操作,发现只要删除第1个分支即可重新起用RPC服务。. {6 _+ r7 X8 F5 [' ]# W
) ]: x+ e! u6 f9 S, q- e+ L e7 z9 |
原来上面三种方法,只能应用于把RPC服务启动类型改为禁止后的情况。笔者关闭RPC服务不是改变启动类型,而是禁止与之相关联的硬件配置文件服务,“Start”项的值仍是“2”,没有变。所以先要将硬件配置文件服务启用,才能启用RPC服务。 |