有时候在安装某个应用程序的过程中会出现下面的错误提示:无法创建COM应用程序!但是可以在安装程序完成后,使用组件服务控制台创建空的COM应用程序,并为其添加所需要的组件,但是在使用windows自带的组件服务时,点击COM+应用程序,会报编录错误(我在安装Ming-WebReport的时候就遇到了这样的问题,后来经过一系列探索,成功解决,希望分享给有需要的人)。
一般情况下,我们遇到过的COM+应用程序编录错误共有两个:(1)第一个是打开COM+应用程序时出现"编录错误,执行最后操作发生错误, 错误代码8007042C-依赖服务或组无法启动,事件或日志包含其他错误疑难信息",
(2)第二个是打开COM+应用程序时出现"错误代码8004E00F -COM+ 无法与 Microsoft 分布式事务协调程序交谈"。这个问题也是IIS常遇到的。
对于第一个错误,解决办法其实很简单,只需将"服务"中的"System Event Notification Service"服务启动即可,它是一个监视系统事件的COM+ 事件系统服务,必须确保启动。但是启动后,再点击或双击COM+应用程序时就可能出现第二个错误,对于第二个错误的解决办法,网上有很多答案,(在已经安装了IIS的情况下)现总结如下:
(1)删除注册表中的键
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Servic es/MSDTC 、
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSDTC
HKEY_CLASSES_ROOT/CID
(2)在开绐->运行中依次输入下列三行命令:
1、停止MSDTC服务:net stop msdtc
2、卸载MSDTC服务:msdtc -uninstall
3、重新安装MSDTC服务:msdtc install (3)启动MSDTC服务:net start msdtc。MSDTC服务即Distributed Transaction Coordinator用来协调跨多个数据库、消息队列、文件系统等资源管理器的事务的服务。确认在事件查看器中msdtc服务已经正常启动(这步很关键,如果没有,重新启动下电脑看看),这里有个技巧,查看MSDTC服务是否启动,执行net stop msdtc,提示正在停止和停止成功就对了,再msdtc - install下就OK.
如果在"COM+应用程序"中,没有"IIS Out-Of-Process Pooled Applications"应用程序,进行如下操作:
开始菜单->运行->cmd打开命令提示窗口输入cd %windir%/system32/inetsrv切换到system32下inetsrv目录输入rundll32 wamreg.dll, CreateIISPackage(注意:必须准确键入"CreateIISPackage"它区分大小写),然后输入regsvr32 asptxn.dll 关闭并重新打开"组件服务",问题解决。
出现此错误的原因有多个,但最主要的原因是IWAM_MACHINE账号在Active Directory(或SAM),IIS的metabase数据库与COM+组件中的密码不匹配不同步造成的。因此解决问题的关键在于使这三方的密码同步起来。密码同步的方法如下:
1.在本地账号管理器中更改IWAM_MACHINE账号的密码.(即启动IIS进程帐号)
2.使用新的密码重设IIS Metabase数据库.(即编辑匿名访问使用的用户帐号)
3.同步COM+应用程序账号密码
(一)更改IWAM_MACHINE账号的密码
1、选择"开始-程序-管理工具-计算机管理-本地用户和组-用户"选中右面的"IWAM_MACHINE"右键选择"设置密码"这里我们设置成test
(二)使用新的密码重设IIS Metabase数据库。(即编辑匿名访问使用的用户帐号)
方法一:在运行中输入CMD:打开DOS命令后输入C:/Inetpub/AdminScripts/adsutil SET w3svc/WAMUserPass "yourpassword"
方法二:选择"默认Web 站点属性-目录安全性标签-编辑-匿名访问和验证控制"在弹出的框中选中"匿名访问",单击"编辑按钮-用户名浏览",选择"IWAM_MACHINE",密码框中输入test,选中"允许IIS控制密码-确定"。如果弹出对话框:"非本地用户帐号不支持密码同步。您真要继续?"确定即可。确定关闭所有对话框。
(三)同步com+应用程序所用的IWAM_MACHINE的密码
使用组件服务mmc管理单元
(1)启动组件服务管理单元:选择"开始-运行-mmc",启动管理控制台,打开"添加/删除管理单元"对话框,将"组件服务"管理单元添加上。
(2)找到"组件服务-计算机-我的电脑-com+应用程序-out-of-process pooled applications",右击"out-of-process pooled applications-属性"。
(3)切换到"out-of-process pooled applications"属性对话框的"标识"选项卡。选择"此用户",浏览,选择用户名"IWAM_MACHINE"。这些都是缺省的。在下面的"密码"和"确认密码"文本框内输入正确的密码"test",确定退出。
(4)系统如果提示"应用程序被一个以上的外部产品创建。你确定要被这些产品支持吗?"时确定即可。
(5)如果我们在IIS中将其它一些web的"应用程序保护"设置为"高(独立的)",那么这个web所使用的com+应用程序的iwam账号密码也需要同步。
以上第二个错误的解决办法是在已经安装好IIS的情况下,不过win7很多情况下IIS都没有安装(我的就是),这时解决这个问题就比较简单了,只需要在启动MSDTC服务后,安装好IIS就可以啦,win7下安装IIS的具体步骤是:依次打开"控制面板-程序-程序和功能",点击左侧的"打开或关闭windows功能",根据需要选择Internet信息服务中功能,然后确定即可,问题解决,再点击"com+应用程序"(有的可能需要重启),应该不会出现以上的错误。
发表评论
-
C#对字符串加密解密
2012-07-06 09:52 847using System; using System.Co ... -
正则表达式基本技巧
2012-07-06 09:45 550以下所有正则表达式均为Python风格 1.模式开关 ... -
常用的正则表达式
2012-07-06 09:37 549日常工作中经常会遇到的一些验证、匹配、替换等字符串操作都会 ... -
KingCMS接触之:源代码剖析
2012-07-06 09:30 569先从核心开始./system/core.class.php ... -
怎么在DropdownList下面嵌入图片
2012-07-02 10:57 764flex4 的DropdownList下拉框组件本身并不支 ... -
Cairngorm示例:用户登录
2012-07-02 10:57 5301. Cairngorm简介 Cairngorm是 ... -
flash builder 制作 浏览器并 读写配制文件
2012-07-02 10:57 500flex/spark" xmlns:mx=&q ... -
[tamarin系列之3] ASC编译器命令行基础
2012-07-02 10:57 3711、ASC编译器简介 avmshell执行了abc文 ... -
LCDS-ES 与 Hibernate3,SQLServer的整合
2012-07-01 00:39 572其实LCDS与Hibernate3(目前最新版本好像是Hi ... -
ActionScript 3.0综合应用案例(图像识别+位图滤镜+Molehill)
2012-07-01 00:39 420本文是对ActionScript 3.0的一个综合应用案例 ... -
关于BlalzeDs RDS
2012-07-01 00:39 574BlazeDs 默认是不用RDS的,因为原因很简单,虽然用 ... -
为什么用*? 为什么不用*?
2012-07-01 00:39 536离开RoR有一段时间了,本来不想提些负面的东西,不过JE猎 ... -
flash特效原理:标签云
2012-07-01 00:39 639其实标签云是一个比较常见的特效类,在wondefl里 ...
相关推荐
微软认证教材之一 组件应用程序设计 — COM + 应用程序设计课件,对具备组件程序设计基础的开发人员是很好的参考资料。
ATA COM+组件应用程序设计 2009年7真题
这是关于微软MAC考试的题目,有需要的不要错过了
3.对象环境 7 二.COM+系统服务介绍 8 1.COM+队列组件 8 2.COM+事件模型 9 3.负载平衡 9 4.内存数据库(IMDB) 10 5.对其他服务的增强 10 三.COM+应用开发 11 1.应用开发支持 11 2.基于属性的C++编程语言 12 四.总结 13...
今年才考过的全都是里边的题目供大家参考!!快快下下!!!
应用程序组件 探索COM+编程模型 COM+组件作为COMDLL 基本COM+编程规则 COM+API 用VB编程COM+ 对象描述表 COM+组件的生命周期 ObjectControl接口 MTS活动 COM+中生成对象 安全引用 组件之间的参数...
win10组件删除工具+包括edge浏览器, win10组件删除工具+包括edge浏览器, win10组件删除工具+包括edge浏览器, win10组件删除工具+包括edge浏览器,
小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 ...
3-2 使用ADO处理BLOB信息 3-3 调用存储过程 3-4 使用ADO的异步执行能力 3-5 处理错误 3-6 使用ADO存取Excel 3-7 使用ADOx 3-8 RDS 3-9 使用ADO开发分布式多层应用系统 3-10 ADO和WebBroker应用程序 3-11 结论 第4章 ...
ALTERA USB Blaster Win7Win8驱动+安装说明+驱动程序无法安装的解决办法: USB-Blaster驱动安装方法.pdf USBBALSTER USB_Blaster WIN7 32 usb下载线驱动安装.pdf Win7Win8win10系统USB-Blaster驱动程序无法安装的解决...
2-2 数据库应用程序 2-3 Master/Detall应用程序 2-4 事务管理 2-5 BatchUpdate模式 2-6 搜寻数据 2-7 过滤数据 2-8 排序数据 2-9 结论 第3章 撰写使用ADO技术的应用系统(二) 3-l 处理多个数据表Join的数据...
ATA COM+组件应用程序设计 2009年7月真题 共三套
win7+64位+Oracle+11g+64位下使用PLSQL+Developer+的解决办法; 包含instantclient-basic-win32-11.2.0.1.0和操作文档
ATA COM+组件应用程序设计 2009年7月真题共3套
如何创建com+组件并部署,在C#程序里如何应用com+组件
notepad++win7 64位 使用各个版本的操作系统 可以对比,分页
微软COM+的部分题库,组件应用服务程序设计的
11.3.2 测试服务程序 11.3.3 DCOMCNFG实用程序 11.3.3.1 缺省属性 11.3.3.2 缺省安全性 11.3.3.3 缺省协议 11.3.3.4 应用程序特定设置 11.4 微软事务服务器(MTS) 11.4.1 MTS概述 11.4.1.1 MTS运行时环境 11.4.1.2 ...
安装sql2005过程有很多错误,这是其中com+组件问题的饿解决方法