Udostępnij za pomocą


Porady: wywoływanie interfejsów API systemu Windows (Visual Basic)

W tym przykładzie definiujemy i wywołujemy funkcję MessageBox w user32.dll, a następnie przekazywany jest do niej ciąg.

Przykład

' 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

Kompilowanie kodu

Ten przykład wymaga:

  • Odwołanie do przestrzeni nazw System.

Niezawodne programowanie

Następujące warunki mogą spowodować wyjątek:

  • Metoda nie jest statyczna, jest abstrakcyjna lub została wcześniej zdefiniowana. Typ nadrzędny jest interfejsem lub długość nazwy lub dllName wynosi zero. (ArgumentException)

  • Nazwa lub nazwa dll to . (ArgumentNullException)

  • Typ zawierający dane utworzono wcześniej przy użyciu CreateType. (InvalidOperationException)

Zobacz także