.NET是否已使原始COM和DCOM编程冗余?

时间:2020-03-05 18:44:56  来源:igfitidea点击:

.net框架的引入是否使COM和DCOM中的原始编程变得多余了?

(除了使用某些COM +服务外,例如通过System.EnterpriseServices命名空间进行事务管理)

解决方案

回答

还没有,但是从长远来看,它的目标是。显然总会有较低级别的地方,但是据我对Microsoft战略的了解,此举是朝着尽可能多地用托管代码替代的方向。

回答

.NET经过精心设计以替代COM(因此也可以替代DLL Hell),因此,尽管.NET应用程序仍可以访问COM组件,但鼓励所有新开发人员迁移到.NET,除非我们有充分的理由坚持使用COM。 。

回答

尚未,因为操作系统仍处于不受管理状态。

如果MS终于做了他们实验室多年来一直在谈论的事情,并且生产出一个完全托管的OS,那么它将成功。

该操作系统将不会向后兼容。他们将必须首先生成Office,IE等的托管版本。他们将不得不产生一个虚拟机来运行非托管应用程序。

痛苦可能类似于从Mac OS9到OSX的迁移。

回答

COM是MS实际失败的最后一项主要技术。 MS正在继续构建依赖于COM的新API。例如,Vista的新媒体基金会(也是DirectShow的继任者,后者也是基于COM的)是COM API。 Direct3D10也是如此(我假设是D3D11)。我认为它不会很快消失,对于许多Windows编程任务来说,它并不是完全多余的。

回答

我想这取决于我们所说的"原始"。我仍然发现有时需要从.Net类库公开COM API。因为我可以通过COM替换小片段,所以使从某些平台到.Net的迁移过程变得更加容易。