COM共同对象和接口C#

问题描述

| 我对此完全陌生,并且正在关注msdn上的教程:http://msdn.microsoft.com/zh-cn/library/aa645736(v=vs.71).aspx#vcwlkcominteroppart1cclienttutorialanchor2 我的问题是为什么我们要使用COM接口和COM CoClasses?实例化一个COM CoClass实例,实例化一个新对象,这是旧对象,但强制转换为COM接口,这似乎很奇怪。 我真的只是想掌握这里的意识形态...任何帮助都是有用的。     

解决方法

理论是将接口(对象可以执行的操作)与实现(如何执行接口或更具体地实例化要执行该操作的特定代码)分开。 仅将类型定义为接口允许COM指定跨多种语言的对象如何进行互操作。这是其主要目标之一。由于接口规范是有关如何传递数据和调用方法的契约,因此任何语言都可以公开COM对象,而客户端无需了解实现者(CoClass)的内部工作原理。 这允许VB6,.net,C ++,deplhi和任何其他多种语言在同一应用程序中进行互操作。 关于COM的维基百科文章在这方面具有一定的背景。     ,这是软件工程中的基本设计原则,接口是契约,在com世界中,coClass是实现。对于COM,可以在IDL中定义该接口,但是可以在VB,C ++ 、. net等中完成实现(coClass)。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...