Marshalling Cordas

A invocação de plataforma copia os parâmetros de cadeia de caracteres, convertendo-os do formato de cadeia de caracteres do .NET (Unicode) para o formato não gerido (ANSI), se necessário. Como as cadeias de caracteres gerenciadas são imutáveis, a invocação de plataforma não as copia de volta da memória não gerenciada para a memória gerenciada quando a função retorna.

A tabela seguinte lista as opções de empacotamento de cadeias de caracteres, descreve a sua utilização e fornece uma ligação para o exemplo .NET correspondente.

Corda Description Sample
Por valor. Passa cadeias de caracteres como parâmetros de entrada. MsgBox
Como resultado. Retorna cadeias de caracteres de código não gerenciado. Strings
Por referência. Passa cadeias de caracteres como parâmetros de entrada/saída usando StringBuilder. Buffers
Numa estrutura por valor. Passa cadeias de caracteres em uma estrutura que é um parâmetro In. Estruturas
Numa estrutura referenciada (char*). Passa cadeias de caracteres numa estrutura que é um parâmetro de entrada e saída. A função não gerida espera um ponteiro para um buffer de caracteres, sendo o tamanho do buffer um membro da estrutura. Strings
Numa estrutura por referência (char[]). Passa cadeias de caracteres numa estrutura que é um parâmetro de entrada e saída. A função não gerenciada espera um buffer de caracteres incorporado. OSInfo
Em uma classe por valor (char*). Passa cadeias de caracteres em uma classe (uma classe é um parâmetro In/out). A função não gerenciada espera um ponteiro para um buffer de caracteres. OpenFileDlg
Em uma classe por valor (char[]). Passa cadeias de caracteres em uma classe (uma classe é um parâmetro In/out). A função não gerenciada espera um buffer de caracteres incorporado. OSInfo
Como uma matriz de cadeias de caracteres por valor. Cria uma matriz de cadeias de caracteres que é passada por valor. Arrays
Como uma matriz de estruturas que contêm cadeias de caracteres por valor. Cria uma matriz de estruturas que contêm cadeias de caracteres e a matriz é passada por valor. Arrays

Ver também