為大家詳細介紹VB.NET使用FindWindow方法
對于一些經(jīng)驗不是很充分的編程人員來說,也許可能對VB.NET與VB之間的不同之處比較模糊。我們現(xiàn)在就以VB.NET使用FindWindow的方法介紹來詳細對此進行一個解讀。我們在實際代碼編寫中,窗口句柄仍然是32位,但是在VB.NET使用FindWindow中,Integer表示32位,Long表示64位。這是調(diào)用API函數(shù)時需要注意。下面是正確的函數(shù)聲明和設(shè)定一個參數(shù)為空的例子:#t#
- Private Declare Auto Function
FindWindow Lib "user32" ( _ - ByVal lpClassName As String, _
- ByVal lpWindowName As String)
As Integer - Private Sub Button2_Click(ByVal
sender As System.Object, ByVal e
As System.EventArgs) Handles
Button2.Click - Dim hWnd As Integer
- hWnd = FindWindow(vbNullString,
"收件箱 - Outlook Express") - If hWnd Then
- MsgBox("找到Outlook Express窗口!")
- Else
- MsgBox("未找到Outlook Express窗口!")
- End If
- End Sub
VB.NET使用FindWindow是比較容易調(diào)用的,因為兩個參數(shù)都是只讀的,不會被API修改,所以在VB6和VB.NET中的差別只在于數(shù)據(jù)類型的不同。而對于GetSystemDirectory這樣的函數(shù)就不同了,因為參數(shù)是可修改的,而在VB.NET中String是不可以修改的,所以必須借助于StringBuilder類才能調(diào)用。