问题标签 [dcom]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2114 浏览

.net - 当调用 Marshal.GetActiveObject(class id here) 时,什么会导致错误 800401E3(操作不可用)?

我们有一个场景,其中一些 .NET 代码试图访问 COM(实际上是 DCOM)对象的当前实例。

被访问的对象是在 VB6 中开发的。它的当前实例在远程系统上可用,并且似乎可以从 VB6 代码正确访问。

尝试调用Marshal.GetActiveObject,指定类名,会导致抛出 COMException,引用错误 800401E3(操作不可用)。

在托管该 DCOM 组件的计算机上运行时,相同的 .NET 代码似乎可以正常运行。

谁能建议为什么会生成此 COMException ?

0 投票
2 回答
2991 浏览

c# - 如何在不破坏现有客户端的情况下使用 c# 重新实现旧的 DCOM 服务器?

过去,我使用 ATL 库使用 VC++ 7.x(Visual Studio 2003 和 .Net 1.1)编写了一个进程外(即 EXE)COM 服务器。服务器使用多线程单元 (MTA) 模型并由 DCOM 调用(VB6 客户端)激活。多个客户端请求由单个进程满足——由第一个请求激活(由 COM 基础结构自动激活)。

这是一段相当复杂的代码,我现在必须对其进行一些更改。不幸的是,我构建它的机器早已不复存在,我什至在使用 VS 2003 的新机器上编译项目时遇到问题。几年前,我曾尝试将这个项目转移到 VS 2005,但有很多对 ATL 库的重大更改,我放弃了这项工作。

而不是解决我当前构建这个旧的 VS 2003 C++ 项目的问题,我正在玩弄用 .NET 重写这个东西。这将使它在我的小商店(我们不再使用 C++)更易于维护。ATL 宏和 C++ 习语早已从我的记忆中消失了,我想将它们保留在那里。:-)

所以我正在探索在 C#/VS2008 中进行这种重写的可行性。我知道您可以向 COM 客户端公开 .NET 类。事实上,我过去曾用一些简单的东西这样做过。然而,这要复杂得多。我不确定很多事情:

  1. 这些接口都在客户端使用的类型库中定义(必须保持未修改)。我可以假设我可以构建一个基于现有类型库实现这些接口的 .NET 服务器吗?

  2. 服务器实现了许多从 IDispatch 继承并标有“dual”和“oleautomation”的接口。举个例子:

    我不相信任何客户端使用 IDispatch 方法,但我会假设互操作生成的 VTable 必须匹配。如何从 .NET 服务器公开这一点?

  3. 什么类型的项目应该容纳这些组件?控制台应用程序?

  4. 如果使用其中一种互操作工具正确注册 DCOM,它可能会激活 EXE。是这样吗?基础设施的行为是否与 C++/ATL 服务器的行为一样——即导致激活单个 EXE 来为多个客户端请求提供服务?

  5. 与 (4) 相关,该服务器会使用多线程单元模型吗?

0 投票
3 回答
38615 浏览

dcom - DCOM 服务器注册失败

我收到此错误

来源:DCOM
Event_ID:10010

“服务器 {6FC4FDAE-96C8-11D3-9F9C-005004053207} 未在要求的超时时间内向 DCOM 注册。”

这是针对一个特定的 exe,当它作为本地系统运行时工作正常,但在非内置管理员下运行时会失败。我需要 exe 在非内置管理员下运行。

目前,我在装有 Citrix 的 Win 2k3 机器上遇到了这个问题。

但是我之前在 XP 机器上也遇到过这个问题。

关于解决问题的任何提示?

0 投票
2 回答
880 浏览

com - 从 COM 到 DCOM

我有一个 out of proc COM 服务器(基于 ATL)和一个 Java 应用程序,它在同一台机器上从这个 COM 服务器实例化对象。

DCOM 启用它还需要什么?是只需要在 COM 服务器上工作还是在服务器和客户端上工作?

0 投票
1 回答
772 浏览

com - 在 COM+ 中注册公开的接口比 Regsvr32 少

我一直在使用 32 位 COM 库,通过 regsvr32 注册它,一切正常。因为我需要从 64 位进程访问它,所以我现在通过组件服务管理工具将它注册为 COM+。问题是,似乎并不是所有的 COM 接口都被暴露了。这可能是什么原因?

0 投票
7 回答
9619 浏览

windows - Linux 世界中最接近 Windows COM/DCOM 的是什么?

有什么比管道/套接字更高级、更全面的吗?

0 投票
1 回答
1495 浏览

excel - 从 Excel - DCOM 中挂钩 R?R为Excel添加?

过去,我使用 DCOM 连接从 Excel 和 Excel 内部的 VBA 调用 R 函数。我刚买了一台新笔记本电脑,一直在寻找 Excel 的 R 插件的安装文件。我到处都能找到对它的引用,但它们都指向 R (D)COM Server 项目的主页http://sunsite.univie.ac.at/rcom。该网址已经关闭了一段时间。是否有另一种方法可以使用另一种方法获得相同的功能?有新的项目页面吗?

我从未尝试在没有 Excel 加载项的情况下使用 DCOM 服务器。有这种可能吗?

0 投票
2 回答
188 浏览

windows - 跨平台COM开发

我们知道 COM 是独立于语言和平台的标准,但我一直只看到有关在 Windows 上开发 COM 组件的文章。您能否分享您对如何开发真正的跨平台应用程序的想法。

0 投票
1 回答
729 浏览

windows-server-2008 - Windows Server 2008 上的 SAP DCOM 连接器

有人知道,是否可以在 Windows Server 2008 上使用“旧”SAP DCOM 连接器?

我想将带有 DCOM 连接到 SAP 的旧 ASP Web 解决方案从 Windows 2000 Server 迁移到 Windows 2008 Server。

当我尝试安装 DCOM 连接器时,我收到错误消息:

“安装程序在您的计算机上找不到 ActivX(R) Data Objects 2.5 或更高版本....”

这很奇怪,因为 ado 在 C:\Program Files\Common Files\System\ado 下!

在此先感谢您的帮助 !

0 投票
4 回答
3446 浏览

.net - .NET 中是否有可行的 DCOM 对应物?

我知道 .net 有 WCF,我相信它在代号为 Indigo(?) 时被吹捧为 COM 的替代品 - 但它实际上是否适合在 .NET 应用程序中使用,提供与 C++/DCOM 应用程序相同的功能?

客户端-服务器系统上的 DCOM 应用程序可能会很痛苦,但我认为与 Web 服务等其他选项相比,它非常有效 - 无论如何都有其他问题。

那么,WCF 是 (D)COM 的真正继承者还是有不同的目标?

编辑:我专门谈论分布式应用程序和远程控制-例如,服务器可以导致在工作站上启动对话框,工作站可以调用服务器上的方法来发送响应等。我在标题中添加了“D”因此。