Cómo: Llamar a las API de Windows (Visual Basic)

En este ejemplo se define y se llama a la función MessageBox en user32.dll y, a continuación, se pasa una cadena a ella.

Ejemplo

' 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

Compilar el código

Para este ejemplo se necesita:

  • Una referencia al espacio de nombres System.

Programación sólida

Las condiciones siguientes pueden provocar una excepción:

  • El método no es estático, es abstracto o se ha definido previamente. El tipo primario es una interfaz o la longitud del name o dllName es cero. (ArgumentException)

  • El name o dllName es Nothing. (ArgumentNullException)

  • Tipo contenedor que se ha creado anteriormente mediante CreateType. (InvalidOperationException)

Consulte también