DllImportAttribute.CharSet Champ
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Indique comment marshaler les paramètres de chaîne vers la méthode et contrôle la composition des noms.
public: System::Runtime::InteropServices::CharSet CharSet;
public System.Runtime.InteropServices.CharSet CharSet;
val mutable CharSet : System.Runtime.InteropServices.CharSet
Public CharSet As CharSet
Valeur de champ
Exemples
L’exemple de code suivant montre comment utiliser l’attribut DllImportAttribute pour importer la fonction Win32 MessageBox
. L’exemple de code appelle ensuite la méthode importée.
using System;
using System.Runtime.InteropServices;
class Example
{
// Use DllImport to import the Win32 MessageBox function.
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
public static extern int MessageBox(IntPtr hWnd, String text, String caption, uint type);
static void Main()
{
// Call the MessageBox function using platform invoke.
MessageBox(new IntPtr(0), "Hello World!", "Hello Dialog", 0);
}
}
Imports System.Runtime.InteropServices
Module Example
' Use DllImport to import the Win32 MessageBox function.
<DllImport("user32.dll", CharSet:=CharSet.Unicode)> _
Function MessageBox(ByVal hwnd As IntPtr, ByVal t As String, ByVal caption As String, ByVal t2 As UInt32) As Integer
End Function
Sub Main()
' Call the MessageBox function using platform invoke.
MessageBox(New IntPtr(0), "Hello World!", "Hello Dialog", 0)
End Sub
End Module
Remarques
Utilisez ce champ avec un membre de l’énumération CharSet pour spécifier le comportement de marshaling des paramètres de chaîne et pour spécifier le nom de point d’entrée à appeler (nom exact donné ou nom se terminant par « A » ou « W »). Le membre d’énumération par défaut pour C# et Visual Basic est CharSet.Ansi
et le membre d’énumération par défaut pour C++ est CharSet.None
, ce qui équivaut à CharSet.Ansi
. En Visual Basic, vous utilisez l’instruction Declare
pour spécifier le CharSet
champ.
Le ExactSpelling champ influence le comportement du champ dans la détermination du CharSet
nom de point d’entrée à appeler. Pour obtenir une description détaillée et des exemples de comportement de marshaling de chaînes et de correspondance de noms associés au CharSet
champ, consultez Spécification d’un jeu de caractères.