Pregunta

Estoy en el proceso de automatización de la acumulación de un producto heredado y han chocado contra un muro ...

Tengo un archivo .idl que se compila en VC ++ 6.0 utilizando midl para generar un .tlb, .hy archivo .c que tiene un paso de generación manual de añadir:

struct StructDef;

Justo delante de un MIDL_INTERFACE en el archivo .h generado. El resto del archivo .h utiliza la definición, y no puede compilar hasta que esto se añadió.

Estoy buscando una manera de autogenerar el archivo de cabecera con la definición struct (preferido), o por lo menos una forma de automatizar el código añadiendo paso a través de un paso de generación.

¿Fue útil?

Solución

#pragma midl_echo instruye MIDL para insertar una pieza arbitraria de texto en el archivo de cabecera generado. Se puede utilizar de esta manera:

#pragma midl_echo("struct StructDef;")

Parece que el cpp_quote atributo proporciona una funcionalidad similar.

Por otra parte, si usted tiene Cygwin instalado, puede que le resulte más sencillo (o simplemente preferible) para enviar -process el archivo de cabecera con sed en un paso de generación. Eso funcionaría también.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top