如果要在同一应用程序中使用 COM 对象和 .NET Framework 对象,则需要解决内存中对象存在方式的差异。 .NET Framework 对象位于托管内存(由公共语言运行时控制的内存)中,并可能根据需要由运行时移动。 COM 对象位于非托管内存中,预计不会移到另一个内存位置。 Visual Studio 和 .NET Framework 提供了用于控制这些托管和非托管组件的交互的工具。 有关托管代码的详细信息,请参阅 公共语言运行时。
除了在 .NET 应用程序中使用 COM 对象之外,你可能还希望使用 Visual Basic 开发可通过 COM 从非托管代码访问的对象。
此页上的链接提供有关 COM 和 .NET Framework 对象之间的交互的详细信息。
相关章节
文章 | DESCRIPTION |
---|---|
COM 互操作 | 提供指向 Visual Basic 中 COM 互作性的主题的链接,包括 COM 对象、ActiveX 控件、Win32 DLL、托管对象和 COM 对象的继承。 |
与非托管代码交互操作 | 简要介绍托管代码和非托管代码之间的一些交互问题,并提供进一步研究的链接。 |
COM 包装器 | 讨论运行时可调用包装器,这些包装器允许托管代码调用 COM 方法,以及允许 COM 客户端调用 .NET 对象方法的 COM 可调用包装器。 |
高级 COM 互作性 | 提供与包装器、异常、继承、线程、事件、转换和封送相关的 COM 互操作性主题的链接。 |
Tlbimp.exe(类型库导入程序) | 讨论可用于将 COM 类型库中找到的类型定义转换为公共语言运行时程序集中的等效定义的工具。 |