C# - 编写 COM 服务器 - 映射到方法的属性
我们正在尝试替换最初为 VB6 应用程序编写的 COM 服务器。 我们无法访问源代码。 由于某种原因,VB6 应用程序可以调用我们的构造函数,但随后它会得到…
COM IDL 定义中 [in, out] 和 [out, retval] 之间的差异
在我使用的一些 IDL 中,我注意到有 2 个用于标记方法返回值的约定 - [in, out] 和 [out, retval]。 当有多个返回值时,似乎使用[in, out],例如: HR…
可以将预编译头与 MIDL 生成的文件一起使用吗?
我们确实有一个项目,它使用 MIDL 工具来创建特定的标头/iid 和代理文件。使用调用 nmake 的构建后步骤来编译这些文件并与项目的其余部分链接。 是否…
如何从 c# 到 c++ 传递 bool IDL 中的 com 接口
我知道我错过了一些简单的东西,我对这些 com 东西几乎没有经验。 我想在 idl 的接口内执行此操作, [id(5), helpstring("Returns true if the object…
如何用接口描述语言表达 int[] 属性?
如何在 IDL 中实现此属性: public int[] Params { get { return _Params } set { _Params = value } } 我尝试了下面的 idl 代码, [propget, helpstr…
IDL 中不可创建的组件类的目的是什么?
在 IDL 中声明如下不可创建的组件类的原因是什么? [ uuid(uuidhere), noncreatable ] coclass CoClass { [default] interface ICoClass } 我的意思是…
在 win32 上编译 idl 文件时出现 midl 错误 2025(midl 不喜欢字符串<40>)
我使用 Linux 工具可以很好地编译 idl 文件,但是当我尝试使用 midl 进行编译时,出现错误, error MIDL2025 : syntax error : expecting a declarato…
预定义的 IDL 文件中没有类型定义
首先, 使用plain C++,没有ATL,MFC尝试使用COM Object接口。 使用 oleview(OLE/COM 对象查看器)- 用于设计 IDL 代码。 在此阶段,使用 MIDL 编译…
使用 IDL 定义纯基类
当我在 IDL 中定义一个不派生自任何内容的接口时,MIDL 预编译器会发出这样的警告 (Visual C++ 2008): 警告 MIDL2271:[对象] 接口必须从另一个 [对…
使用 C++ C# 中的 COM 接口,适用于客户端和服务器
我需要让一段 C# 代码通过 COM 与各种实现进行交互。 为了使该集成的用户更轻松,我将交互的接口包含在 IDL 中(作为相关现有 DLL 的一部分,但没有组…
用于从 C# 获取 C 风格数组的函数的 IDL 声明(在 C++ 中)
我正在使用现有的代码库,该代码库由一些用 C++ 编写的 COM 接口和 C# 前端组成。 由于需要添加一些新功能,因此我必须修改 COM 部分。 在一种特定情…
__REQUIRED_RPCNDR_H_VERSION__
我从 IDL 创建一个头文件。 IDL 文件已在 Visual C++ 2005 中编译。 生成的头文件包含 #define REQUIRED_RPCNDR_H_VERSION 475 。 我尝试在 Visual St…