CharSet-Enumeration
Veröffentlicht: Oktober 2016
Gibt an, welcher Zeichensatz von gemarshallten Zeichenfolgen verwendet werden soll.
Namespace: System.Runtime.InteropServices
Assembly: mscorlib (in mscorlib.dll)
Syntax
[SerializableAttribute]
[ComVisibleAttribute(true)]
public enum CharSet
[SerializableAttribute]
[ComVisibleAttribute(true)]
public enum class CharSet
[<SerializableAttribute>]
[<ComVisibleAttribute(true)>]
type CharSet
<SerializableAttribute>
<ComVisibleAttribute(True)>
Public Enumeration CharSet
Member
Membername | Beschreibung | |
---|---|---|
Ansi | Marshallen von Zeichenfolgen als Zeichenfolgen mit mehreren Byte-Zeichen. |
|
Auto | Automatisch Marshallen von Zeichenfolgen für das Ziel-Betriebssystem. Der Standardwert ist Unicode auf Windows NT, Windows 2000, Windows XP und Windows Server 2003-Produktfamilie; der Standardwert ist Ansi unter Windows 98 und Windows Me. Obwohl die common Language Runtime-Standard ist Auto, Sprachen können diese Standardeinstellung außer Kraft setzen. Beispielsweise standardmäßig c# markiert alle Methoden und Typen als Ansi. |
|
None | Dieser Wert ist veraltet und hat das gleiche Verhalten wie CharSet.Ansi. |
|
Unicode | Marshallen von Zeichenfolgen als Unicode-2-Byte-Zeichen. |
Hinweise
Da es mehrere nicht verwaltete Zeichenfolgen-Datentypen und nur einen Zeichenfolgentyp verwaltet, müssen Sie verwenden sollen ein Zeichensatz an, wie verwaltete Zeichenfolgen von nicht verwaltetem Code gemarshallt werden. Diese Enumeration stellt die Optionen festlegen, werden DllImportAttribute und StructLayoutAttribute. Eine ausführliche Beschreibung der Marshallen von Zeichenfolgen und des Verhaltens dieser Enumeration zugeordneten, finden Sie unter Specifying a Character Set.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie an eine CharSet Enumerationswert beim Anwenden der StructLayoutAttribute auf eine verwaltete Definition.
[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
[StructLayout(LayoutKind::Sequential, CharSet=CharSet::Ansi)]
public ref struct MyPerson
{
public:
String^ first;
String^ last;
};
Versionsinformationen
Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Siehe auch
DllImportAttribute
StructLayoutAttribute
System.Runtime.InteropServices-Namespace
Zurück zum Anfang