CharSet Enumeration
Dictates which character set marshaled strings should use.
Assembly: mscorlib (in mscorlib.dll)
| Member name | Description | |
|---|---|---|
| Ansi | Marshal strings as multiple-byte character strings. | |
| Auto | Automatically marshal strings appropriately for the target operating system. The default is Unicode on Windows NT, Windows 2000, Windows XP, and the Windows Server 2003 family; the default is Ansi on Windows 98 and Windows Me. Although the common language runtime default is Auto, languages may override this default. For example, by default C# marks all methods and types as Ansi. | |
| None | This value is obsolete and has the same behavior as CharSet::Ansi. | |
| Unicode | Marshal strings as Unicode 2-byte characters. |
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. This enumeration, which provides character set options, is used by DllImportAttribute and StructLayoutAttribute. For a detailed description of the string marshaling and name matching behavior associated with this enumeration, see Specifying a Character Set.
The following code example shows how to specify a CharSet enumeration value when applying the StructLayoutAttribute to a managed definition.
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1