Это ответ, который я хотел найти в StackOverflow, но не смог. Оказывается, довольно просто превратить простой C # dll в COM dll.
Для создания C # dll
Создайте решение с проектом класса C #. Класс должен иметь интерфейс для свойств / методов и интерфейс для событий. Присвойте атрибуты GUID классу и интерфейсам, как описано в MSDN - Пример класса COM (Руководство по программированию в C #) . См. Также: MSDN. Практическое руководство. Создание событий, обрабатываемых приемником COM .
.
В Свойствах проекта> вкладка «Приложение»> кнопка «Информация о сборке»> установите флажок «Сделать сборку видимой». Это делает все открытые методы в классе COM видимыми.
В Свойствах проекта> вкладка «Сборка»> установите «Цель платформы» на x86.
Это все, что вам нужно сделать, чтобы создать DLL. Чтобы позвонить в DLL, необходимо зарегистрировать ее.
Регистрация DLL на компьютере разработчика
Вы можете зарегистрировать DLL одним из следующих способов:
Установка DLL с помощью InstallShield
Если вы используете InstallShield для установки DLL вместе с остальной частью вашего приложения, сделайте следующее.
В InstallShield добавьте новый компонент в список компонентов. Не забудьте связать Компонент с Функцией.
Установите для свойства компонента ".NET COM Interop" значение Да.
Добавьте файл .dll в раздел «Файлы» компонента.
Не проверяйте свойство «Самостоятельная регистрация».
Щелкните правой кнопкой мыши по файлу .dll и выберите «Установить ключевой файл».
Добавьте файл .tlb в раздел «Файлы» компонента.
Проверьте свойство «Самостоятельная регистрация».
На целевом ПК должна существовать правильная версия .Net Framework.
Вот и все.