2011-07-25 10 views
12

Estoy creando un proyecto en C++ que usa la biblioteca de captura de video de DirectShow para conectar a una cámara. El fabricante de la tarjeta de video (BlackMagic) ha proporcionado archivos .idl (Language Definition Language) que agregan nuevos gráficos de captura a la colección estándar.Incluyendo un archivo .idl en un proyecto de C++

La cosa es que nunca he encontrado un archivo .idl, y la dirección muy vaga de "incluir el archivo" no ayuda mucho. Incluirlo con una directiva #include no arroja ningún error, pero el programa tampoco consigue las diversas definiciones que supongo que tiene la intención de agregar, ya que es el único archivo que se me pide que incluya con el proyecto.

Mi pregunta es: ¿cómo debería uno incluir un archivo .idl en un proyecto?

+0

Lo más probable es que no necesite incluir el .IDL en su proyecto, o hay una manera más fácil y/o mejor para lograr lo que sea que esté tratando de lograr. –

Respuesta

16
 
For example: you have an AFileName.idl 
1. Add the AFileName.idl to you project: Right Click on The project->Add->Existing Item... 
2. Click Right on The AFileName.idl from the project->Compile 
3. The step 2 will generate AFileName_h.h, AFileName_i.c, AFileName_p.c,... 
4. Now you can #include "AFileName_h.h" and use it, you also may need 
    to add AFileName_i.c or other generated files to your project 
    depending on your needs. 

observación: los pasos se describen para VS2008, pero no creo que VS2010 sea diferente en esa perspectiva.

+0

Hice el truco, muchas gracias. – wyatt

+3

Si agrega un archivo .c a su proyecto, probablemente también deba cambiar el C/C++ del archivo | Avanzado | Propiedad "Compilar como" para "Compilar como código C (/ TC)" y también puede tener que establecer el C/C++ del archivo | Cabeceras precompiladas | Propiedad de "encabezado precompilado" para "No usar encabezados precompilados" –

Cuestiones relacionadas