`
wangangie32
  • 浏览: 40299 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

win7组件服务COM+应用程序编录错误解决办法

 
阅读更多

  有时候在安装某个应用程序的过程中会出现下面的错误提示:无法创建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+应用程序"(有的可能需要重启),应该不会出现以上的错误。 
  
分享到:
评论

相关推荐

    COM与COM+从入门到精通(pdf版本,含源码)

    应用程序组件 探索COM+编程模型 COM+组件作为COMDLL 基本COM+编程规则 COM+API 用VB编程COM+ 对象描述表 COM+组件的生命周期 ObjectControl接口 MTS活动 COM+中生成对象 安全引用 组件之间的参数...

    COM+组件注册方法

    COM+组件通常用于构建分布式应用程序,使各个组件能高效地协同工作。 在Windows系统中,有两种主要的COM+组件注册方法: 1. 使用`regsvr32.exe`命令行工具: `regsvr32.exe`是Windows自带的一个实用程序,用于...

    ATA COM+组件应用程序设计 真题二

    在"ATA COM+组件应用程序设计"这一主题中,我们主要探讨的是如何利用COM+技术进行高效且可靠的软件架构设计。 首先,COM+的核心概念是组件化。组件是可重用的代码单元,它们可以独立于应用程序运行,并通过接口与...

    Sql 2005 安装失败 com+组件问题

    - 打开“服务”管理工具,确保“COM+ 应用程序”服务已启动。 - 如果服务未启动,请尝试手动启动该服务,并检查是否有任何启动错误。 - 如果服务无法启动,请查看事件查看器中的日志记录,查找具体的错误信息。 ...

    win8+win7 +PE工具

    Win8+Win7+PE工具多合一安装光盘制是近年来出现的一种新的安装解决方案。这种解决方案可以将Win8和Win7两个操作系统合并到一个安装光盘中,且可以支持PE系统的安装,非常方便用户的使用。 Win8+Win7+PE工具多合一...

    小程序源码 用户反馈组件 (代码+截图)

    小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 (代码+截图)小程序源码 用户反馈组件 ...

    如何创建com+组件并部署

    COM+(Component Object Model Plus)是微软提出的一种分布式应用程序架构,它扩展了传统的COM(Component Object Model)技术,提供了一种更加高效、灵活且可管理的组件服务环境。本篇文章将详细阐述如何创建COM+...

    Delphi5.X ADO/MTS/COM+高级程序设计篇

    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章 ...

    用Delphi 设计 MTS、COM+应用系统

    - 调试MTS/COM+组件可能比调试普通应用程序更复杂,因为涉及到多层架构和分布式环境。 - 本章最后部分会详细介绍如何在Delphi集成开发环境中正确地设置Host Application和其他调试参数。 - 会提供一个实际的调试...

    ALTERA USB Blaster Win7、Win8驱动+安装说明+驱动程序无法安装的解决办法.zip

    ALTERA USB Blaster Win7Win8驱动+安装说明+驱动程序无法安装的解决办法: USB-Blaster驱动安装方法.pdf USBBALSTER USB_Blaster WIN7 32 usb下载线驱动安装.pdf Win7Win8win10系统USB-Blaster驱动程序无法安装的解决...

    net开发COM+组件

    3. **库应用程序**:在客户应用程序的进程内执行,不支持远程访问和队列组件。 4. **COM+ 预安装应用程序**:安装过程中自动创建的应用程序,不可修改或删除。 #### 五、程序集 (Assembly) 程序集是 .NET ...

    Delphi.5.X.ADO.MTS.COM+高级程序设计篇

    2-2 数据库应用程序 2-3 Master/Detall应用程序 2-4 事务管理 2-5 BatchUpdate模式 2-6 搜寻数据 2-7 过滤数据 2-8 排序数据 2-9 结论 第3章 撰写使用ADO技术的应用系统(二) 3-l 处理多个数据表Join的数据...

    .net下开发COM+组件

    在.NET框架下开发COM+组件,主要是为了利用COM+服务提供的高级功能,如事务处理、安全性和并发控制,以优化应用程序的性能和可扩展性。COM+是Microsoft Windows操作系统的一部分,它建立在早期的Component Object ...

    李维-Delphi.5.X.ADO.MTS.COM+高级程序设计篇

    MTS/COM+服务可以被Delphi应用程序调用,实现组件的生命周期管理、事务处理、安全性控制等功能。同时,Delphi还提供了MTS Explorer工具,方便开发者查看、调试和管理MTS/COM+服务。 **6. 高级程序设计** “高级程序...

    jcom java调用com+组件

    Java调用COM+组件是一种常见的跨语言交互技术,它允许Java应用程序利用已有的COM(Component Object Model)或COM+组件,这些组件通常是用其他语言如C++或Visual Basic编写的。这种技术对于整合遗留系统或者利用...

    Win7下配置IIS+php+mysql+zend环境

    手把手教你Win7下配置IIS v7 0+php+mysql+zend操作环境 再也不用担心服务器搭建了

    c#的com+设计,对com+在c#中的应用有详细讲解,一本不错的c#书

    COM+(Component Object Model Plus)是微软提出的一种组件服务模型,它在早期的COM(Component Object Model)基础上扩展,提供了一种更为高级的服务框架,用于构建分布式、事务性、安全性和可管理的应用程序。...

    微信小程序——用户反馈组件(截图+源码).zip

    微信小程序——用户反馈组件(截图+源码).zip 微信小程序——用户反馈组件(截图+源码).zip 微信小程序——用户反馈组件(截图+源码).zip 微信小程序——用户反馈组件(截图+源码).zip 微信小程序——用户反馈...

    Win7 64位可用的Spy ++

    Spy++ 是一款强大的Windows系统...综上所述,"Win7 64位可用的Spy ++"是一个对开发者极其有价值的工具,尤其在调试Windows应用程序时。确保正确使用和配置,它可以帮助解决许多棘手的问题,提升软件开发的效率和质量。

Global site tag (gtag.js) - Google Analytics