Имеются написанные dll на C++ и проект на C#, в котором эта библиотека используется. Что хотелось бы сделать: из C# вызывается функция dll, которая запускает поток проверки устройства. Когда устройство отвечает из потока вызывается callback функция, которая вызывает функцию C#. Проблема: передать функцию C# в функцию dll на C++, чтобы впоследствии вызвать. Пробовал делать функцию dll для передачи функции, которую надо вызвать, с входным параметром как указатель на функцию, а в инициализации этой функции в C# писать не указатель на функцию, а делегат. Пробовал также, только код на C# указать как unsafe и вместо делегата писать указатель на функцию. Везде компилятор ругался. Вопрос: как вызвать из функции dll на C++ функцию на С# или как передать и вызвать.