Определить структуру в среднем заголовочном файле - PullRequest
2 голосов
/ 18 ноября 2009

Я нахожусь в процессе автоматизации сборки устаревшего продукта и попал в стену ...

У меня есть файл .idl, который скомпилирован в VC ++ 6.0 с использованием midl для создания файла .tlb, .h и .c, для которого нужно добавить шаг сборки вручную:

struct StructDef;

Просто впереди MIDL_INTERFACE в сгенерированном файле .h. Остальная часть файла .h использует определение, и я не могу скомпилировать, пока это не будет добавлено.

Я ищу способ автоматической генерации заголовочного файла с определением структуры (предпочтительно) или, по крайней мере, способ автоматизации этого этапа добавления кода через пользовательский этап сборки.

1 Ответ

2 голосов
/ 18 ноября 2009

#pragma midl_echo инструктирует MIDL вставлять произвольный фрагмент текста в сгенерированный заголовочный файл. Вы можете использовать это так:

#pragma midl_echo("struct StructDef;")

Похоже, что атрибут cpp_quote обеспечивает аналогичную функциональность.

В качестве альтернативы, если у вас установлен Cygwin , вам может быть проще (или просто предпочтительнее) постобработать файл заголовка с помощью sed на пользовательском этапе сборки. Это также сработало бы.

...