CharSet 列挙体

マーシャリングされた文字列で使用する文字セットを指定します。

<Serializable>
Public Enum CharSet
[C#]
[Serializable]
public enum CharSet
[C++]
[Serializable]
__value public enum CharSet
[JScript]
public
   Serializable
enum CharSet

解説

アンマネージ文字列の型はいくつかあり、マネージ文字列の型は 1 つしかありませんので、マネージ文字列をアンマネージ コードにマーシャリングするときは、文字セットを使用してその方法を指定する必要があります。この列挙体は、文字セット オプションを提供し、 DllImportAttribute および StructLayoutAttribute で使用されます。この列挙体に関連する文字列マーシャリングと名前一致の動作の詳細については、「 文字セットの指定 」を参照してください。

メンバ

メンバ名 説明
Ansi マルチバイト文字として文字列をマーシャリングします。
Auto

.NET Compact Framework でもサポート。

対象オペレーティング システムに適するように、自動的に文字列をマーシャリングします。Windows NT、Windows 2000、Windows XP、Windows Server 2003 ファミリの場合、既定値は Unicode です。Windows 98 および Windows Me の場合、既定値は Ansi です。
None この値は今後使用しません。動作は CharSet.Ansi と同じです。
Unicode

.NET Compact Framework でもサポート。

Unicode 2 バイト文字として文字列をマーシャリングします。

使用例

[Visual Basic, C#] StructLayoutAttribute をマネージ定義に適用するときに CharSet 列挙体の値を指定する方法を次の例に示します。

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

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Runtime.InteropServices

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

System.Runtime.InteropServices 名前空間 | DllImportAttribute | StructLayoutAttribute