DllImportAttribute.CharSet Campo

Definizione

Indica come eseguire il marshalling dei parametri di stringa nel metodo e controlla l'alterazione dei nomi.Indicates how to marshal string parameters to the method and controls name mangling.

public: System::Runtime::InteropServices::CharSet CharSet;
public System.Runtime.InteropServices.CharSet CharSet;
val mutable CharSet : System.Runtime.InteropServices.CharSet
Public CharSet As CharSet 

Valore del campo

Esempi

Nell'esempio di codice seguente viene illustrato come utilizzare DllImportAttribute l'attributo per importare la MessageBox funzione Win32.The following code example shows how to use the DllImportAttribute attribute to import the Win32 MessageBox function. Nell'esempio di codice viene quindi chiamato il metodo importato.The code example then calls the imported method.

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

Commenti

Utilizzare questo campo con un membro dell' CharSet enumerazione per specificare il comportamento di marshalling dei parametri di stringa e per specificare il nome del punto di ingresso da richiamare (il nome esatto specificato o un nome che termina con "a" o "W").Use this field with a member of the CharSet enumeration to specify the marshaling behavior of string parameters and to specify which entry-point name to invoke (the exact name given or a name ending with "A" or "W"). Il membro di enumerazione predefinito C# per e Visual Basic CharSet.Ansi è e il membro di enumerazione C++ predefinito CharSet.Noneper è, che equivale CharSet.Ansia.The default enumeration member for C# and Visual Basic is CharSet.Ansi and the default enumeration member for C++ is CharSet.None, which is equivalent to CharSet.Ansi. In Visual Basic si usa l' Declare istruzione per specificare il CharSet campo.In Visual Basic, you use the Declare statement to specify the CharSet field.

Il ExactSpelling campo influisce sul comportamento CharSet del campo per determinare il nome del punto di ingresso da richiamare.The ExactSpelling field influences the behavior of the CharSet field in determining which entry-point name to invoke. Per una descrizione dettagliata ed esempi del marshalling delle stringhe e del comportamento di corrispondenza dei nomi CharSet associato al campo, vedere specifica di un set di caratteri.For a detailed description and examples of the string marshaling and name matching behavior associated with the CharSet field, see Specifying a Character Set.

Si applica a

Vedi anche