Поделиться через


Вызов функции DLL

Хотя вызов неуправляемых функций DLL почти идентичен вызову другого управляемого кода, существуют различия, которые могут сделать функции DLL кажущимися запутанными вначале. В этом разделе приводятся разделы, описывающие некоторые необычные проблемы, связанные с вызовами.

Структуры, возвращаемые из вызовов платформы, должны быть типами данных, которые имеют одинаковое представление в управляемом и неуправляемом коде. Такие типы называются блиттабл типами, так как они не требуют преобразования (см. Блиттабл и не блиттабл типы). Чтобы вызвать функцию, которая имеет неподдерживаемую структуру в качестве возвращаемого типа, можно определить вспомогательный блиттовый тип того же размера, что и неблиттовый тип, и преобразовать данные после возврата функции.

В этом разделе

Передача структур
Определяет вопросы передачи структур данных с предопределенной структурой.

функции обратного вызова
Предоставляет основные сведения о функциях обратного вызова.

Практическое руководство. Реализация функций обратного вызова
Описывает, как реализовать функции обратного вызова в управляемом коде.

Использование Неуправляемых Функций DLL
Описывает, как вызывать неуправляемые функции DLL с помощью вызова платформы.

Маршалинг данных с использованием Platform Invoke
Описывает, как объявлять параметры метода и передавать аргументы функциям, экспортируемым неуправляемых библиотеками.