windows - "traditional"COM 和 COM+ 之间的区别(在组件服务中)

标签 windows com com+ component-services

我所说的“传统”方式是指在注册表中注册 DLL。

似乎还有另一种设置它的方法,方法是转至 mmc->Component Services->COM+ Applications 并添加 .tlb 文件。

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

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

任何人都可以指出一个好的资源来澄清我的理解吗?

最佳答案

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

当您在 COM+ 下注册一个 COM 组件时,它将运行“Out Of Process”;在这种模式下,您保证在您的 COM 服务器和它的客户端之间有一个代理。

我能想到的学习更多关于 COM+ 的最好的地方是官方 MS 站点:http://msdn.microsoft.com/en-us/library/ms685978(VS.85).aspx

关于windows - "traditional"COM 和 COM+ 之间的区别(在组件服务中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2954968/

相关文章:

java - Eclipse Java SOAP 在 Linux 上调用非常慢,但在 PC 上很好

windows - MongoDB 容器在 Windows 10 上失败

c# - 在 C# 中实现 DISPID_VALUE 并从 C++ 中调用它

java - 有什么方法可以对依赖于旧版(非工作)JRE 版本的应用程序进行沙箱处理吗?

windows - 进行系统调用(Windows 命令提示符)用英语回答

c# - C# 中的 COM 可以看到全局类实例吗?

c# - 通过 COM 包装器从托管代码调用 COM 可见托管组件

c++ - COM+ 组件的 CoCreateInstance 失败,返回 0x8007007e “The specified module could not be found”

.net - 仍然推荐 COM+ 吗?

c# - 使用 COM+ 在 MSXML 和 .Net 之间互操作