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

发布于 2024-12-07 13:17:36 字数 409 浏览 0 评论 0原文

我必须将我的 .NET 服务器应用程序与供应商的产品集成。供应商的产品将位于其自己的服务器上,并具有受支持的&记录了 API,但遗憾的是,仅作为 COM 对象。由于 DCOM 和 .NET 远程处理均已弃用,因此是否有一种受支持(即不存在在 .NET 5 中被删除的风险)的方式来执行此集成,而无需创建和维护 DCOM 和 .NET 远程处理。在供应商盒子上安装 Web 服务我的机器上的 Web 客户端可以通过网络将这些请求代理到 COM?

请注意,我写作和写作非常自在。使用 Web 服务(可以时使用 REST,必须时使用 SOAP)。我只是想保持这个应用程序的拓扑简单,避免双重部署等。出于同样的原因,我避免使用 WCF,因为它看起来开销很大,但如果 WCF 支持通过网络,我很乐意使用它。否则,我想我正在设计、编写、部署和开发。使用这个新的网络服务。请告诉我我不必这样做!

I have to integrate my .NET server app with a vendor's product. The vendor's product will be on its own server and has a supported & documented API, but alas, only as COM objects. Since DCOM and .NET remoting are both deprecated, is there a supported (i.e. not at risk of being removed in .NET 5) way to perform this integration without having to create & install a web service on the vendor box & web client on my box to proxy these requests across the network to COM?

Note that I'm very comfortable writing & consuming web services (REST when I can, SOAP when I have to). I'd just like to keep the topography of this app simple, avoid dual deploys, etc. For the same reason, I've avoided WCF since it seems like a lot of overhead, but if WCF supports exposing the underlying COM interface over the network, I'd happily use it. Otherwise, I guess I'm designing, writing, deploying, & consuming this new web service. Please show me I don't have to do this!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

温柔戏命师 2024-12-14 13:17:36

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

DCOM 可能已被弃用,但 COM+ 并未被弃用,并且允许远程调用。您需要客户端上的 COM 互操作以及自定义激活(您将无法仅调用 new 来创建实例,因为您必须指示远程计算机),但它是绝对可行。

You can add it as a COM+ application and then access it from the remote machine.

DCOM might be deprecated but COM+ is not, and allows for remote calls. You'd need COM interop on the client side, as well as custom activation (you won't be able to just call new to create the instance, as you have to indicate the remote machine) but it's definitely doable.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文