Como chamar APIs do Windows (Visual Basic)
Este exemplo define e chama a função MessageBox na user32.dll e, em seguida, passa uma cadeia de caracteres para ela.
Exemplo
' 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
Compilando o código
Este exemplo requer:
- Uma referência ao namespace System.
Programação robusta
As seguintes condições podem causar uma exceção:
O método não é estático, é abstrato ou foi definido anteriormente. O tipo pai é uma interface, ou o comprimento do Name ou dllName é zero. (ArgumentException)
O Name ou dllName é Nothing. (ArgumentNullException)
O tipo recipiente foi criado anteriormente usando CreateType. (InvalidOperationException)
Consulte também
Tarefas
Instruções passo a passo: chamando APIs do Windows (Visual Basic)
Conceitos
Visão aprofundada da invocação de plataforma
Exemplos de invocação de plataforma
Consumindo funções de DLL não gerenciadas
Definindo um método com a emissão de reflexão