如何:调用 Windows API (Visual Basic)
此示例定义并调用 user32.dll 中的 MessageBox
函数,然后将字符串传递给它。
示例
' 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
编译代码
此示例需要:
- 对 System 命名空间的引用。
可靠编程
以下情况可能会导致异常:
该方法不是静态的,而是抽象的,或者已预定义。 父类型是接口,或者 name 或 dllName 的长度为零。 (ArgumentException)
name 或 dllName 为
Nothing
。 (ArgumentNullException)之前已使用
CreateType
创建包含类型。 (InvalidOperationException)