vb.net中调用 Window API 的方法与 VB6中类似,也是必须使用Declare语句声明动态连接库(DLL)中外部程序的引用。
vb.net中调用 Window API 的方法与 VB6中类似,也是必须使用Declare语句声明动态连接库(DLL)中外部程序的引用。
下面做一个调用的实例, 调用 advapi32.dll中的 GetUserName 函数 来获得 系统登录的用户名 。
Imports System
Imports System.Text
Imports Microsoft.VisualBasic
Public Class Form3Class Form3
Declare Function GetUsername()Function GetUsername Lib "advapi32.dll" Alias _
"GetUserNameA" (ByVal lpbuffer As String, ByRef nSize As Integer) _
As Integer
Private Sub Button3_Click()Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim RV As Integer
Dim UserName As String
Dim Buffer As String
Buffer = New String(CChar(" "), 25)
RV = GetUsername(Buffer, 25)
UserName = Microsoft.VisualBasic.Left(Buffer, InStr(Buffer, Chr(0)) - 1)
MsgBox(UserName)
End Sub
End Class
当然,DotNet FrameWork 2.0已经提供了丰富的类库。我们可以不必调用 WIN32 API 就可以得到基本上所有的功能,尤其是当 微软 的 操作系统也已经 架设 在 .net FrameWork 上之后。