Извлечь заголовочный файл C / C ++ из класса C #, доступного для COM - PullRequest
1 голос
/ 02 июня 2010

Я не уверен, что правильно настроил все, что мне нужно, в своем классе C #, но он работает в COM. Я искал пример класса C #, который успешно использовался в проекте C / C ++, но ничего не встречал.

Я пытался использовать приложение OLE / COM Object View, чтобы открыть файл .tlb и сохранить как .h, но это дает некоторые ошибки: MIDL1009: неизвестный аргумент игнорируется; MIDL1001: не удается открыть входной файл Studio

"Studio" - это не имя файла, это Syslog, поэтому он поднимает мне красный флаг.

Есть идеи?

Ответы [ 2 ]

4 голосов
/ 02 июня 2010

Если у вас есть tlb, вам не нужен заголовочный файл. #import из tlb сгенерирует его для вас автоматически.

#import "my.tlb" named_guids raw_interfaces_only

Подробнее о #import здесь .

2 голосов
/ 02 июня 2010

Если вы уже выставили свой класс C # на COM, то вы должны использовать COM-взаимодействие для доступа к COM Callable Wrapper из вашего кода C ++.

Нет необходимости создавать заголовочный файл.

Если у вас есть возможность запуска управляемого кода в вашем проекте C ++, то вам даже не нужен COM, вы можете просто ссылаться на свой класс C # и обращаться к нему так же, как и к любому другому объекту .NET из C ++.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...