Gewusst wie: Aufrufen von Windows-APIs (Visual Basic)
Dieses Beispiel definiert die MessageBox-Funktion in der Datei "user32.dll", ruft sie auf und fügt ihr anschließend eine Zeichenfolge hinzu.
Beispiel
' Defines the MessageBox function.
Public Class Win32
Declare Auto Function MessageBox Lib "user32.dll" (
ByVal hWnd As Integer, ByVal txt As String,
ByVal caption As String, ByVal Type As Integer
) As Integer
End Class
' Calls the MessageBox function.
Public Class DemoMessageBox
Public Shared Sub Main()
Win32.MessageBox(0, "Here's a MessageBox", "Platform Invoke Sample", 0)
End Sub
End Class
Kompilieren des Codes
Dieses Beispiel setzt Folgendes voraus:
- Ein Verweis auf den System-Namespace.
Robuste Programmierung
Unter den folgenden Bedingungen kann eine Ausnahme ausgelöst werden:
Die Methode ist entweder nicht statisch, abstrakt oder wurde zuvor definiert. Beim übergeordneten Typ handelt es sich um eine Schnittstelle, die Länge von Name, oder es gilt dllName = 0 (null). (ArgumentException)
Name oder dllName ist Nothing. (ArgumentNullException)
Der enthaltende Typ wurde zuvor mithilfe von CreateType erstellt. (InvalidOperationException)
Siehe auch
Aufgaben
Exemplarische Vorgehensweise: Aufrufen von Windows-APIs (Visual Basic)
Konzepte
Genauere Betrachtung von Plattformaufrufen
Beispiele für Plattformaufrufe
Verwenden nicht verwalteter DLL-Funktionen
Definieren einer Methode mittels Reflektionsausgabe