从.NET访问另一个框上的COM对象(不使用不推荐的DCOM、远程处理)

从.NET访问另一个框上的COM对象(不使用不推荐的DCOM、远程处理),.net,wcf,com,dcom,.net-remoting,.net,Wcf,Com,Dcom,.net Remoting,我必须将我的.NET服务器应用程序与供应商的产品集成。供应商的产品将在其自己的服务器上,并有一个受支持和文档化的API,但遗憾的是,它仅作为COM对象。由于DCOM和.NET远程处理都不推荐使用,是否有一种受支持的(即不存在在.NET 5中被删除的风险)方法来执行此集成,而无需在“供应商”框和“我的”框上的“web客户端”上创建和安装web服务,以便将这些请求通过网络代理到COM 请注意,我非常喜欢编写和使用web服务(可以休息时休息,必要时使用SOAP)。我只想保持这个应用程序的拓扑结构简单,

我必须将我的.NET服务器应用程序与供应商的产品集成。供应商的产品将在其自己的服务器上,并有一个受支持和文档化的API,但遗憾的是,它仅作为COM对象。由于DCOM和.NET远程处理都不推荐使用,是否有一种受支持的(即不存在在.NET 5中被删除的风险)方法来执行此集成,而无需在“供应商”框和“我的”框上的“web客户端”上创建和安装web服务,以便将这些请求通过网络代理到COM


请注意,我非常喜欢编写和使用web服务(可以休息时休息,必要时使用SOAP)。我只想保持这个应用程序的拓扑结构简单,避免双重部署,等等。出于同样的原因,我避免了WCF,因为它看起来开销很大,但如果WCF支持通过网络公开底层COM接口,我会很乐意使用它。否则,我想我是在设计、编写、部署和使用这个新的web服务。请告诉我我不必这么做

您可以将其添加为COM+应用程序,然后从远程计算机访问它


DCOM可能已弃用,但COM+未弃用,并且允许远程调用。您需要客户端上的COM互操作,以及自定义激活(您不能仅调用<代码>新< /代码>创建实例,因为您必须指示远程机器),但它肯定是可行的。

您可以考虑使用

现在研究这两个选项(WCF为COM+,COM+远程处理),并将报告回来。(并选出一个赢家)很快。谢谢!继续回答这个问题,因为这似乎是最简单的。然而,我最终决定咬紧牙关,编写一个传统的web服务(可能使用WCF,也可能不使用WCF)。供应商支持和我们信任最终产品的能力是不可能的。谢谢。现在研究这两个选项(WCF用于COM+,COM+远程处理),并将很快返回报告(并选择赢家)。谢谢!