2010-08-28 2 views
1

У меня есть DLL, содержащая COM-объект, который я пытаюсь использовать. Я не мог найти никаких хороших объяснений, как это сделать с C. Было бы очень признательно, если бы вы, ребята, могли перенаправить меня в учебник или что-то в этом роде.Как использовать COM-объект из C?

ответ

1

Написание кода C, использующего COM-сервер, объявляется вне закона «жестоким и необычным наказанием» в статье 5 Всеобщей декларации прав человека.

Если вы решили проигнорировать это, попробуйте начать с запуска OleView.exe, File + View TypeLib, выберите DLL. Это открывает окно с содержимым библиотеки типов, встроенной в DLL. Скопируйте и вставьте объявления интерфейса в файл .idl. Запустите это через midl.exe, который создает файл .h, который имеет C-совместимые объявления для интерфейсов.

+0

Эх, это не _that_ намного хуже, чем C++. Помимо всех ручных ссылок, связанных с жонглированием, то есть. Это не так плохо, как писать COM _server_ в C, это точно ... – bdonlan

+0

Получение объявлений интерфейса является проблемой. * Написание * COM-сервер в C на самом деле проще. –

Смежные вопросы