CharSet Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Indica qué juego de caracteres deben usar las cadenas con referencias calculadas.
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
- Herencia
- Atributos
Campos
Ansi | 2 | Serializa cadenas como cadenas de caracteres de varios bytes: la página de códigos de Windows (ANSI) predeterminada del sistema en Windows y UTF-8 en Unix. |
Auto | 4 | Calcula automáticamente las referencias de las cadenas como corresponde al sistema operativo de destino. Vea Juegos de caracteres y serialización para conocer los detalles. Aunque el valor predeterminado de Common Language Runtime es Auto, los lenguajes pueden invalidar este valor predeterminado. Por ejemplo, de manera predeterminada C# y Visual Basic marcan todos los métodos y tipos como Ansi. |
None | 1 | Este valor ha quedado obsoleto y se comporta del mismo modo que Ansi. |
Unicode | 3 | Calcula referencias de las cadenas como cadenas de caracteres Unicode de 2 bytes. |
Ejemplos
En el ejemplo de código siguiente se muestra cómo especificar un CharSet valor de enumeración al aplicar a StructLayoutAttribute una definición administrada.
[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
Comentarios
Dado que hay varios tipos de cadena no administrados y solo un tipo de cadena administrada, debe usar un juego de caracteres para especificar cómo se deben serializar las cadenas administradas en código no administrado. Esta enumeración, que proporciona opciones de juego de caracteres, se usa en DllImportAttribute y StructLayoutAttribute. Para obtener una descripción detallada del comportamiento de coincidencia de nombres y serialización de cadenas asociado a esta enumeración, vea Especificar un juego de caracteres.