Marshalling di stringhe

Con il richiamo piattaforma vengono copiati i parametri di stringa mediante la conversione dal formato .NET Framework (Unicode) a quello non gestito, se necessario. Poiché le stringhe gestite sono immutabili, con il richiamo piattaforma non vengono copiate di nuovo dalla memoria non gestita a quella gestita al completamento della funzione.

Nella tabella riportata di seguito sono elencate le opzioni di marshalling per le stringhe, con la descrizione dell'utilizzo e un collegamento all'esempio corrispondente di .NET Framework.

String Descrizione Esempio

Per valore.

Passa le stringhe come parametri in.

MsgBox

Come risultato.

Restituisce le stringhe dal codice non gestito.

Stringhe

Per riferimento.

Passa le stringhe come parametri in/out mediante StringBuilder.

Buffer

In una struttura per valore.

Passa le stringhe in una struttura che è un parametro in.

Strutture

In una struttura per riferimento (char*).

Passa le stringhe in una struttura che è un parametro in/out. Per la funzione non gestita è previsto un puntatore a un buffer di caratteri e la dimensione del buffer è un membro della struttura.

Stringhe

In una struttura per riferimento (char[]).

Passa le stringhe in una struttura che è un parametro in/out. Per la funzione non gestita è previsto un buffer di caratteri incorporato.

OSInfo

In una classe per valore (char*).

Passa le stringhe in una classe che è un parametro in/out. Per la funzione non gestita è previsto un puntatore a un buffer di caratteri.

OpenFileDlg

In una classe per valore (char[]).

Passa le stringhe in una classe che è un parametro in/out. Per la funzione non gestita è previsto un buffer di caratteri incorporato.

OSInfo

Come matrice di stringhe per valore.

Crea una matrice di stringhe passata come valore.

Matrici

Come matrice di strutture che contengono stringhe per valore.

Crea una matrice di strutture che contengono stringhe e la matrice viene passata come valore.

Matrici

Vedere anche

Concetti

Tipi di dati del richiamo piattaforma
Marshalling di classi, strutture e unioni
Marshalling di matrici di tipi
Esempi vari di marshalling

Altre risorse

Marshalling dei dati con richiamo piattaforma