DllImportAttribute(String) Konstruktor
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der DllImportAttribute-Klasse mit dem Namen der DLL, die die zu importierende Methode enthält.
public:
DllImportAttribute(System::String ^ dllName);
public DllImportAttribute (string dllName);
new System.Runtime.InteropServices.DllImportAttribute : string -> System.Runtime.InteropServices.DllImportAttribute
Public Sub New (dllName As String)
Parameter
- dllName
- String
Der Name der DLL, die die nicht verwaltete Methode enthält. In .NET Framework kann dies einen Assemblyanzeigenamen enthalten, wenn die DLL in einer Assembly enthalten ist.
Beispiele
Das folgende Codebeispiel zeigt, wie Sie das DllImportAttribute -Attribut verwenden, um die Win32-Funktion MessageBox
zu importieren. Im Codebeispiel wird dann die importierte Methode aufgerufen.
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
Hinweise
Nur .NET Framework: Wenn eine nicht verwaltete DLL-Datei in einer Assembly enthalten ist, z. B. mithilfe des Linkers oder der /linkresource
Compileroption, können Sie den Assemblyanzeigenamen als Teil von dllName
angeben. Wenn beispielsweise eine nicht verwaltete DLL namens unmanaged.dll
in einer verwalteten Assembly mit dem Namen MyAssembly
enthalten ist, kann das Attribut wie im folgenden Code dargestellt angegeben werden.
[DllImport("unmanaged.dll, MyAssembly, Version= 1.0.0.0,"
"Culture=neutral, PublicKeyToken=a77e0ba5eab10125")]
int SomeFuncion1(int parm);
[DllImport("unmanaged.dll, MyAssembly, Version= 1.0.0.0," +
"Culture=neutral, PublicKeyToken=a77e0ba5eab10125")]
internal static extern int SomeFuncion1(int parm);
<DllImport("unmanaged.dll, MyAssembly, Version= 1.0.0.0," +
"Culture=neutral, PublicKeyToken=a77e0ba5eab10125")>
Friend Shared Function DummyFuncion1(parm As Integer) As Integer
End Function