Gewusst wie: Aufrufen von Windows-APIs (Visual Basic)

In diesem Beispiel wird die MessageBox-Funktion in „user32.dll“ definiert und aufgerufen. Anschließend wird eine Zeichenfolge an sie übergeben.

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

Für dieses Beispiel benötigen Sie Folgendes:

  • Einen Verweis auf den System-Namespace

Stabile Programmierung

Die folgenden Bedingungen können einen Ausnahmefehler verursachen:

  • Die Methode ist nicht statisch, ist abstrakt oder wurde zuvor definiert. Der übergeordnete Typ ist eine Schnittstelle, oder die Länge von name oder dllName ist null. (ArgumentException)

  • Der Name oder dllName ist Nothing. (ArgumentNullException)

  • Der enthaltende Typ wurde zuvor mit CreateType erstellt. (InvalidOperationException)

Weitere Informationen