DllImportAttribute.CharSet-Feld
Veröffentlicht: Oktober 2016
Gibt an, wie Parameter der Methode und die namenszerlegung für Steuerelemente zu marshallen.
Namespace: System.Runtime.InteropServices
Assembly: mscorlib (in mscorlib.dll)
Syntax
public CharSet CharSet
public:
CharSet CharSet
val mutable CharSet : CharSet
Public CharSet As CharSet
Feldwert
Type: System.Runtime.InteropServices.CharSet
Hinweise
Verwenden Sie dieses Feld mit einem Mitglied der CharSet Enumeration das Marshallingverhalten für Zeichenfolgenparameter festzulegen und welcher Einstiegspunktname aufgerufen werden soll (der exakte angegebene Name oder Name endet mit "A" oder "W") angeben. Das Standardelement für die Enumeration für c# und Visual Basic ist CharSet.Ansi und ist der Standard-Enumerationsmember für C++ CharSet.None, dies entspricht dem CharSet.Ansi. In Visual Basic verwenden Sie die Declare Anweisung an die CharSet Feld.
Die ExactSpelling Feld beeinflusst das Verhalten der CharSet Feld bei der Bestimmung der Einstiegspunktname aufgerufen. Eine ausführliche Beschreibung und Beispiele für das Marshallen von Zeichenfolgen und das zugeordnete Verhalten der CharSet Feld, finden Sie unter Specifying a Character Set.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sie die DllImportAttribute Attribut zum Importieren der Win32- MessageBox Funktion. Das Codebeispiel ruft dann die importierte Methode.
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
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
Versionsinformationen
Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Siehe auch
ExactSpelling
DllImportAttribute-Klasse
System.Runtime.InteropServices-Namespace
Zurück zum Anfang