CharSet CharSet CharSet CharSet Enum

Definizione

Stabilisce quali stringhe sottoposte a marshalling del set di caratteri devono essere usate.Dictates which character set marshaled strings should use.

public enum class CharSet
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum CharSet
type CharSet = 
Public Enum CharSet
Ereditarietà
Attributi

Campi

Ansi Ansi Ansi Ansi 2

Eseguire il marshalling di stringhe come stringhe di caratteri a byte multiplo.Marshal strings as multiple-byte character strings.

Auto Auto Auto Auto 4

Eseguire automaticamente il marshalling di stringhe in modo appropriato per il sistema operativo di destinazione.Automatically marshal strings appropriately for the target operating system. Visualizzare dei set di caratteri e di marshalling per informazioni dettagliate.See Charsets and marshaling for details. Sebbene il common language runtime il valore predefinito è Auto, lingue possono eseguire l'override di questa impostazione predefinita.Although the common language runtime default is Auto, languages may override this default. Ad esempio, per impostazione predefinita C# e Visual Basic contrassegnano tutti i metodi e tipi come Ansi.For example, by default C# and Visual Basic mark all methods and types as Ansi.

None None None None 1

Questo valore è obsoleto e ha lo stesso comportamento come Ansi.This value is obsolete and has the same behavior as Ansi.

Unicode Unicode Unicode Unicode 3

Effettuare il marshalling di stringhe come stringhe di caratteri a 2 byte Unicode.Marshal strings as Unicode 2-byte character strings.

Esempi

Esempio di codice seguente viene illustrato come specificare una CharSet valore dell'enumerazione quando si applica il StructLayoutAttribute a una definizione gestita.The following code example shows how to specify a CharSet enumeration value when applying the StructLayoutAttribute to a managed definition.

[StructLayout(LayoutKind::Sequential, CharSet=CharSet::Ansi)]
public ref struct MyPerson
{
public:
    String^ first;
    String^ last;
};
[StructLayout(LayoutKind.Sequential, CharSet=CharSet.Ansi)]
public struct MyPerson
{
    public String first;
    public String last;
}
<StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Ansi)> _
Public Structure MyPerson
    Public first As String
    Public last As String
End Structure

Commenti

Poiché esistono diversi tipi di stringa non gestita e solo uno gestito di tipo stringa, è necessario usare un set per specificare come gestito le stringhe di caratteri devono effettuare il marshalling a codice non gestito.Because there are several unmanaged string types and only one managed string type, you must use a character set to specify how managed strings should be marshaled to unmanaged code. Questa enumerazione, che fornisce le opzioni del set di caratteri, viene utilizzata da DllImportAttribute e StructLayoutAttribute.This enumeration, which provides character set options, is used by DllImportAttribute and StructLayoutAttribute. Per una descrizione dettagliata del marshalling delle stringhe e corrispondenza comportamento associato a questa enumerazione, vedere specifica un Set di caratteri.For a detailed description of the string marshaling and name matching behavior associated with this enumeration, see Specifying a Character Set.

Si applica a

Vedi anche