用新的托管COM可调用程序集替换COM DLL

时间:2019-02-06 19:52:11

标签: com interop code-generation

是否存在一种从现有本机COM DLL搭建COM可调用.NET类库的聪明方法?

场景

假设您有一个基于COM的C ++ Win32应用程序,并且想用从头开始编写的东西替换其中一个COM DLL。

约束

  1. 新库应以C#编写,针对.NET Framework(4.x)
  2. 不需要修改其余现有的非托管应用程序。
  3. 不需要重新编译非托管代码。

我已经知道的

  • 您可以创建可COM调用的.NET程序集。
  • 您可以从现有的COM DLL导入类型库IDL。
  • 基于this问题,即使很艰巨,我想要的东西也应该可以实现。

问题

是否存在一种聪明/有效的方法来为具有可与现有非托管COM DLL完全相同签名的COM可调用.NET类库生成脚手架代码,以便我可以替换这些DLL?

一开始不需要任何实现,例如,每个方法都可以抛出NotImplementedException。

0 个答案:

没有答案