Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
При необходимости вызов платформы копирует строковые параметры, преобразуя их из формата .NET Framework (Юникод) в неуправляемый формат (ANSI). Так как управляемые строки неизменяемы, вызов платформы не копирует их из неуправляемой памяти в управляемую память при возврате функции.
В следующей таблице перечислены параметры маршаллинга строк, описание их использования и ссылка на соответствующий пример .NET Framework.
Струна | Описание | Образец |
---|---|---|
По значению. | Передает строки в качестве входных параметров. | MsgBox |
В результате. | Возвращает строки из неуправляемого кода. | строки |
По ссылке. | Передает строки в качестве параметров in/Out с помощью StringBuilder. | Буферы |
В структуре по значению. | Передает строки в структуре, являющейся параметром In. | структуры |
В структуре через ссылку (char*). | Передает строки в структуре, которая используется как входной и выходной параметр. Неуправляемая функция ожидает указатель на буфер символов, а размер буфера является членом структуры. | строки |
В структуре, передаваемой по ссылке (char[]). | Передает строки в структуре, которая используется как входной и выходной параметр. Неуправляемая функция ожидает встроенный буфер символов. | OSInfo |
В классе по значению (char*). | Передает строки в классе (класс является параметром In/Out). Неуправляемая функция ожидает указатель на буфер символов. | OpenFileDlg |
В классе по значению (char[]). | Передает строки в классе (класс является параметром In/Out). Неуправляемая функция ожидает встроенный буфер символов. | OSInfo |
Как массив строк по значению. | Создает массив строк, передаваемых по значению. | Массивы |
Как массив структур, в которых строки представлены в виде значений. | Создает массив структур, содержащих строки, и массив передается по значению. | Массивы |