"传统"COM和COM +之间的区别(在组件服务中)

kiz*_*zx2 4 windows com com+ component-services

通过"传统"方式,我的意思是在注册表中注册DLL.

似乎还有另一种方法来设置它,方法是转到mmc->组件服务 - > COM +应用程序并添加.tlb文件.

我有一个支持这两种方法的COM库.安装时,它将自己在注册表中注册为COM组件,它工作正常.但是,当我.tlb使用组件服务方法添加文件时,行为似乎不同,它开始发出错误.

我怀疑它与编组和进程间对象传输有关?(对不起,我真的是COM领域的菜鸟)

谁能指出我有一个很好的资源来清除我的理解?

Vag*_*aus 11

COM +(组件服务)提供了大量开箱即用的基础设施; 例如,COM +提供事务,安全性,对象池和一些其他服务.

在COM +下注册COM组件时,它将运行"Out Of Process"; 在此模式下,您可以确保在COM服务器与其客户端之间拥有代理.

我可以想到更多关于COM +的最佳地方是官方的MS网站:http://msdn.microsoft.com/en-us/library/ms685978(VS.85).aspx

希望这可以帮助.

  • COM组件是否为out-proc取决于您如何注册它.如果您选择"服务器应用程序",它将是out-proc,但如果您选择"库应用程序",它将在进程中. (2认同)