Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Хотя вызов неуправляемых функций DLL почти идентичен вызову другого управляемого кода, существуют различия, которые могут сделать функции DLL кажущимися запутанными вначале. В этом разделе приводятся разделы, описывающие некоторые необычные проблемы, связанные с вызовами.
Структуры, возвращаемые из вызовов платформы, должны быть типами данных, которые имеют одинаковое представление в управляемом и неуправляемом коде. Такие типы называются блиттабл типами, так как они не требуют преобразования (см. Блиттабл и не блиттабл типы). Чтобы вызвать функцию, которая имеет неподдерживаемую структуру в качестве возвращаемого типа, можно определить вспомогательный блиттовый тип того же размера, что и неблиттовый тип, и преобразовать данные после возврата функции.
В этом разделе
Передача структур
Определяет вопросы передачи структур данных с предопределенной структурой.
функции обратного вызова
Предоставляет основные сведения о функциях обратного вызова.
Практическое руководство. Реализация функций обратного вызова
Описывает, как реализовать функции обратного вызова в управляемом коде.
Связанные разделы
Использование Неуправляемых Функций DLL
Описывает, как вызывать неуправляемые функции DLL с помощью вызова платформы.
Маршалинг данных с использованием Platform Invoke
Описывает, как объявлять параметры метода и передавать аргументы функциям, экспортируемым неуправляемых библиотеками.