.net - 如何获取 COM 对象的类型

标签 .net reflection com interop com-interop

我在 Visual Studio 中引用了一个 COM 库,因此它自动为我创建了相应的互操作程序集。我想做一个GetType()在这些 com 对象上,但它们总是返回 System.__ComObject .不过,查询它们的接口(interface)是可行的:

bool isOfType = someComeObject is ISomeComObject; //this works

但我真正想要的是返回 com 对象的实际类型:
Type type = someComeObject.GetType(); //returns System.__ComObject :-(

有谁知道如何做我想做的事?

最佳答案

添加对 Microsoft.VisualBasic.dll 的引用进而:

Microsoft.VisualBasic.Information.TypeName(someCOMObject)

MSDN 引用 here .

关于.net - 如何获取 COM 对象的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1429548/

相关文章:

c++ - COM,删除内存而不是调用 Release()

c# - 2个应用程序之间的进程间通信

javascript - 如何在 javascript 事件中获取验证组?

java - 如何使用反射从另一个项目访问类内部的枚举?

c# - 由于 javascript 验证问题,页面被发回

c# - 如何在 C# 中获取当前产品版本?

java - 如何在不知道属性类型的情况下设置属性(即通过 BeanUtils)

c# - 使用 C/C++ 学习 COM 会帮助我更好地理解 .NET 吗?

c# - C++ 到 C# - 一个小函数

c# - 如何修复无法将类型 'System.Drawing.Color' 隐式转换为 'Microsoft.Xna.Framework.Color'