C# 从COM对象访问类
我用C#编写了一个类库(.dll),它是从第三方.exe调用的。.exe调用my.dll中的方法,将COM对象传递给我的方法。由于各种原因,我无法访问此COM对象的等效类定义,但我能够使用此便利工具发现其公共方法和属性。我希望创建一个C# 从COM对象访问类,c#,com,comobject,C#,Com,Comobject,我用C#编写了一个类库(.dll),它是从第三方.exe调用的。.exe调用my.dll中的方法,将COM对象传递给我的方法。由于各种原因,我无法访问此COM对象的等效类定义,但我能够使用此便利工具发现其公共方法和属性。我希望创建一个外部类定义,以便访问这些成员,但正如我发现的,C#不允许这样做 访问这些类成员的最佳/正确的方法是什么?如果您知道方法名称和参数类型,您可以使用动态 dynamic o = theComObject; o.SomeMethod(arg1, arg2, arg3);
外部类
定义,以便访问这些成员,但正如我发现的,C#不允许这样做
访问这些类成员的最佳/正确的方法是什么?如果您知道方法名称和参数类型,您可以使用
动态
dynamic o = theComObject;
o.SomeMethod(arg1, arg2, arg3);
var v = o.SomeProperty;
如果您知道方法名称和参数类型,那么只需使用
dynamic
dynamic o = theComObject;
o.SomeMethod(arg1, arg2, arg3);
var v = o.SomeProperty;
你的代词和这个,那个都混在一起了,很难理解你在问什么。我认为您需要做的只是获取COM对象的IDispatch接口并从中调用。看看汉斯在这篇文章中的回答:@JoeWillcoxson我很乐意编辑澄清-什么是第一对模棱两可的东西?我也会看看那个问答。你的代词和这个,那个都混在一起了,很难理解你在问什么。我认为您需要做的只是获取COM对象的IDispatch接口并从中调用。看看汉斯在这篇文章中的回答:@JoeWillcoxson我很乐意编辑澄清-什么是第一对模棱两可的东西?我也会看看这个问答。