查看文章
 
RPC服务无法启动的解决方法
2007-10-28 13:58
、 若目标为2000计算机,可以这样来解决:利用远程“计算机管理”,设置目标机上的RPC服务启动类型:自动,然后重启目标计算机。


【说明】顺便对想做这个实验的读者,说明一下如何停止RPC服务:
(1) 在2000上可以将RPC、Plug and Play等服务的启动类型由“自动”改为“禁止”(但不能手动停止,需要设“禁止”后重启机)。
(2)
但在03/XP上无法做到上述这点,启动类型下拉菜单为灰色不可选。要禁止,可以用2000计算机,通过远程“计算机管理”连接过来后,进行修改。也就是说,下拉菜单是否可选,取决于本地操作系统,而非目标操作系统。也可以利用sc
config 命令将RPC服务启动类型设为“禁止”,后面详细介绍。
(3) 实验中要慎重,如果将RPC服务禁用停止后,又没有办法再把它启动起来,你将不得不重做系统。
(4) 我的两名助手在按着我的初稿,做这个实验时,不约而同地犯了同样的错误。因此我觉得:实在有必要把下面的问题及其解决办法说明一下。
问题:在试着禁用RPC服务时,他们都在RPC服务/右键/属性/“登录”标签下,在硬件配置文件Profile
1中将RPC服务禁用了。其结果导致后来即使把RPC服务的启动类型设为自动,但由于硬件配置文件的禁止,也无法启动RPC服务了。出错提示为:“在本地计算机上无法启动RPC服务。错误1058:无法启动服务,原因可能是已被禁用或与其相关联的设备没有启动。”

解决:由于此时无法找开对话框,就只能利用注册表了。
A、 开始/运行:regedit,找到下面的项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware
Profiles\Current\System\CurrentControlSet\Enum\ROOT\LEGACY_RPCSS󠧀
将此项下的CSConfigFlags的数据由1改为0(相当于启用)。
说明:也可以干脆删除ROOT下的LEGACY_RPCSS项。

或者:新建一个txt文本文件,内容如下:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\0001\System\CurrentControlSet\Enum\ROOT\LEGACY_RPCSS]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\0001\System\CurrentControlSet\Enum\ROOT\LEGACY_RPCSS\0000]
"CSConfigFlags"=dword:00000000
然后改后缀名为reg,双击添进注册表。
B、 重启计算机。


2、若目标为03/XP计算机,当RPC服务停止时,使用远程“计算机管理”,无法连接到目标计算机。可以在故障机上本地运行:sc config
rpcssstart= auto,或远程运行:sc \\目标IP config rpcss start=
auto来解决(后面详细介绍)。设成自动后,在“计算机管理”的图形界面下,虽然可以直接点工具栏上的“启动服务”按钮,手动将RPC服务启动起来,但最好还是重启一次机。
【说明】感兴趣的读者,可以自己试一下:虽然此时RPC服务已经启动,但你用远程“计算机管理”仍然连不来,任务栏上也看不到运行的应用程序,需要重启03/XP以后才行。因为有众多的服务依赖于RPC服务,这些服务此时并没有启动起来。

【附加说明】解决RPC服务禁用、停止还可以利用如下的办法。
(1)编辑本地注册表(若目标为2000,远程编辑注册表也可以):HLM\SYSTEM\CurrentControlSet\Services\RpcSs下,设start=2
(即自动)
(2)利用恢复控制台的Enable命令:Enable RpcSs service_auto_start
(3)如果计算机是域成员,可利用组策略来覆盖其本地设置。具体:域或OU的组策略/计算机配置/Windows设置/安全设置/系统服务(注:本地策略无此项)/RPC,选择服务启动模式
(4)附表:服务启动类型在注册表、恢复控制台的Enable命令、Sc config命令中的值。
启动类型 注册表 Enable Sc config
启动 0 Boot 空格Boot
系统 1 System 空格System
自动 2 Auto 空格Auto
手动 3 Demand 空格Demand
禁用 4 使用Disabled命令 空格Disabled

二、rpc服务意外终止,系统重启问题
1.第一种情况,可能是中毒引起的,杀毒、打上冲击波、振荡波的补丁

2.第二种情况,一般都是IE组件在注册表中注册信息被破坏,可以按下面的方法去解决该问题:
(1).在"开始"菜单中打开"运行"窗口,在其中输入"regsvr32 actxprxy.dll",然后"确定",接着会出现一个信息对话 框"DllRegisterServer in actxprxy.dll succeeded",再次点击"确定"。
(2) 再次打开"运行"窗口,输入"regsvr32 shdocvw.dll
(3) 再次打开"运行"窗口,输入"regsvr32 oleaut32.dll
(4) 再次打开"运行"窗口,输入"regsvr32 actxprxy.dll
(5) 再次打开"运行"窗口,输入"regsvr32 mshtml.dll
(6) 再次打开"运行"窗口,输入"regsvr32 msjava.dll
(7) 再次打开"运行"窗口,输入"regsvr32 browseui.dll
(8) 再次打开"运行"窗口,输入"regsvr32 urlmon.dll
如果排除病毒问题后,做完上面的几个IE组件注册一般问题即可得到解决。

类别:默认分类||添加到搜藏 |分享到i贴吧|浏览(1551)|评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
     

   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu