雅培菁智纯净和有机:为什么我的“组件服务”不可用?

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/03 03:08:43
我在学习ASP,需要用IIS来调试,需要同步COM+应用程序所用的密码,根据网上的帮助文章,我进行如下操作:

(1)启动组件服务管理单元:选择“开始”->“控制面板”->“管理工具”->“组件服务”双击打开

(2)找到“组件服务”->“计算机”->“我的电脑”->“COM+应用程序”->“Out-Of-Process Pooled Applications”,右击“Out-Of-Process Pooled Applications”->“属性”。

(3)切换到“Out-Of-Process Pooled Applications”属性对话框的“标志”选项卡。“此应用程序在下列账户下运行”选择中“此用户”会被选中,用户名是“IWAM_MYSERVER”。这些都是缺省的,不必改动。在下面的“密码”和“确认密码”文本框内输入正确的密码,确定退出。

可是我进行到第(2)步的“COM+应用程序”的时候,突然弹出个信息:

执行最后操作时发生错误
错误代码 8004e00f-com+无法与microsoft分布式事务协调程序交谈
事件日志可能包含其他疑难解答信息
下面是个“确定”按钮

不知道这是怎么回事?哪位大侠能帮助解决,这里先谢过了。
回答者请着重两个方面:
一、能不能解决这个问题
二、怎么解决(请提供傻瓜的方法,本人特菜)

以下是我分析问题的方法:

1、刚开始以为是 MS DTC 依赖的服务有没有启动,仔细察看后没有相关的服务没有启动!

2、然后怀疑是不是启动COM对应的用户权限不够

a.依次单击“开始”和“运行”,键入 dcomcnfg,然后单击“确定”。
b.单击“默认安全设置”选项卡。
c.在“默认访问权限”、“默认启动权限“下,单击“编辑默认值”。
d.验证以下默认访问权限:SYSTEM、INTERACTIVE、Administrators是否具有“允许访问”访问的权限
验证后都没有问题

3、检查 MSDTC服务是否真的停止
net stop msdtc
提示:没有启动MSDTC服务

4、考虑会不会是用户的密码文件SAM丢失,导致得不到密码,因此无法登陆

a、修改IIS内部IWAM_Myserver帐号密码,在c:\inetpub\adminscripts\目录下(IIS安装默认目录),输入:c:\inetpub\adminscripts>

cscript adsutil.vbs set w3svc/wamuserpass "1234"
b、同步com+应用程序所用的IWAM_Myserver的密码,原技术文章上所叙述的办法有两种,我这里采用的为第二种,即“使用IWAM帐号同步脚本ynciwam.vbs”

也就是在c:\inetpub\adminscripts目录下(默认目录)输入:
c:\inetpub\adminscripts> cscript synciwam.vbs -v
发现执行情况其中最后一段有一个Error的提示。一段错误提示
启动COM还是一样的提示错误

6、万般无奈的情况下去寻找MS DTC 日志文件,奇怪的是没有找到。这才意识到是不是它的日志文件被误删除了。使用msdtc -resetlog 创建日志文件。
再次启动COM+不再提示错误信息,至此,故障现象全部排除!

因此,以下几点需要注意的:
1、不要随便轻易清空事件日志中的事件记录,很多故障现象需要从这个里面下手找原因;
2、COM+程序的用户权限和用户启动权限很重要,应注意检查。
3、系统重要文件(如SAM)不可轻易删除,如使用外部程序修改注册表或SAM表信息以获得管理员权限。但千万不要删除该文件。