Procedure: Windows-API's aanroepen (Visual Basic)

In dit voorbeeld wordt de MessageBox functie in user32.dll gedefinieerd en aangeroepen en vervolgens wordt er een tekenreeks aan doorgegeven.

Opmerking

' 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

De code compileren

Voor dit voorbeeld is het volgende vereist:

  • Een verwijzing naar de System naamruimte.

Robuuste programmering

De volgende voorwaarden kunnen een uitzondering veroorzaken:

  • De methode is niet statisch, is abstract of is eerder gedefinieerd. Het bovenliggende type is een interface of de lengte van de naam of dllName is nul. (ArgumentException)

  • De naam of dllName is Nothing. (ArgumentNullException)

  • Het bevattende type is eerder gemaakt met behulp van CreateType. (InvalidOperationException)

Zie ook