Red de conocimiento informático - Conocimiento informático - Cómo escribir código VC++ para usar componentes COM

Cómo escribir código VC++ para usar componentes COM

Para ayudar a los lectores a comprender rápidamente las funciones de escribir clientes COM en VC++, le recomiendo que descargue la última versión desde el enlace de apelación y siga los siguientes pasos para configurar un entorno de prueba simple:

Paso1. Utilice Visual Studio 2008 Abra el archivo de la solución CodeFx (Visual Studio debe ejecutarse como administrador).

El segundo paso. Cree los ejemplos CppCOMClient y MFCCOMClient en él. Dependiendo de la configuración de dependencia del proyecto, los componentes COM (CSDllCOMServer, ATLDllCOMServer, ATLExeCOMServer) de los que dependen estos dos ejemplos de VC++ también se compilarán y registrarán.

El paso 3.CppCOMClient demuestra cómo crear y utilizar componentes COM en proceso utilizando C++ nativo. El componente COM se puede escribir en código nativo o en código .NET.

Paso 4. Ejecute MFCCOMClient directamente y obtenga el siguiente resultado. MFCCOMClient muestra cómo utilizar MFC ClassWizard para crear y utilizar componentes COM fuera de proceso.

Esto finaliza la prueba sencilla. Veamos el enfoque general para escribir un programa VC++ para usar componentes COM: Método 1: use la API COM directamente, por ejemplo, use los métodos CoCreateInstance y GetIDsOfNames e Invoke definidos por la interfaz IDispatch para crear y usar componentes COM. Por supuesto, la premisa es que el componente COM admite IDispatch. CodeFx/CppCOMClient/RawAPI.cpp es un ejemplo de este método.

Método 2: utilice la directiva #import de VC++ para importar la biblioteca de tipos del componente COM de destino y generar automáticamente un conjunto de clases fuertemente tipadas encapsuladas y punteros inteligentes. Esto proporciona una gran comodidad a los desarrolladores, quienes pueden beneficiarse del intellisense de Visual Studio ya que las clases generadas y los punteros inteligentes ocultan API COM complejas, conversiones de tipos, etc. En particular, este ejemplo demuestra el uso de un componente COM (CSDllCOMServer) escrito en .NET Framework.

Método 3: si está desarrollando un programa compatible con MFC, se beneficiará más del potente Asistente de clases de MFC, que encapsula y oculta todas las directivas #import en el Método 2. Con sólo unos pocos clics del mouse, puede crear y utilizar componentes COM de manera tan fluida y transparente como las clases normales.