Udostępnij za pośrednictwem


CharSet Wyliczenie

Definicja

Określa, który zestaw znaków ma być używany przez zestaw ciągów marshalowanych.

public enum class CharSet
public enum CharSet
[System.Serializable]
public enum CharSet
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum CharSet
type CharSet = 
[<System.Serializable>]
type CharSet = 
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CharSet = 
Public Enum CharSet
Dziedziczenie
Atrybuty

Pola

Ansi 2

Marshaling strings as multiple-byte character strings: systemowa domyślna strona kodowa systemu Windows (ANSI) w systemie Windows i UTF-8 w systemie Unix.

Auto 4

Automatycznie marshaluje ciągi odpowiednio dla docelowego systemu operacyjnego. Szczegółowe informacje można znaleźć w temacie Charsets and marshaling (Zestawy znaków i marshaling). Mimo że domyślne środowisko uruchomieniowe języka wspólnego to Auto, języki mogą zastąpić tę wartość domyślną. Na przykład domyślnie C# i Visual Basic oznaczyć wszystkie metody i typy jako Ansi.

None 1

Ta wartość jest przestarzała i ma takie samo zachowanie jak Ansi.

Unicode 3

Przeprowadzanie marshalingu ciągów jako ciągów znaków Unicode 2-bajtowych.

Przykłady

W poniższym przykładzie kodu pokazano, jak określić CharSet wartość wyliczenia podczas stosowania StructLayoutAttribute elementu do definicji zarządzanej.

[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

Uwagi

Ponieważ istnieje kilka niezarządzanych typów ciągów i tylko jeden typ ciągu zarządzanego, należy użyć zestawu znaków, aby określić sposób, w jaki zarządzane ciągi powinny być marshalowane do niezarządzanego kodu. To wyliczenie, które udostępnia opcje zestawu znaków, jest używane przez DllImportAttribute element i StructLayoutAttribute. Aby uzyskać szczegółowy opis działania marshalingu ciągów i dopasowywania nazw skojarzonych z tym wyliczeniem, zobacz Określanie zestawu znaków.

Dotyczy

Zobacz też