您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“VB.NET API函數(shù)怎么用”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“VB.NET API函數(shù)怎么用”這篇文章吧。
程序中判定Windows的版本
眾所周知,Windows3.x各版本或多或少會(huì)有些差別,為了使開(kāi)發(fā)程序避免出現(xiàn)莫名其妙的錯(cuò)誤,***在程序運(yùn)行前自動(dòng)判定Windows的版本。采用API提供的函數(shù)getversion很容易實(shí)現(xiàn)這一點(diǎn)。函數(shù)聲明如下: Declare Function GetVersion Lib"Kernel"() As Integer 此函數(shù)沒(méi)有參數(shù),返回值為Windows的版本號(hào),其中版本號(hào)的低位字節(jié)為Windows的主版本號(hào),版本號(hào)的高位字節(jié)返回Windows的次版本號(hào)。判別過(guò)程如下:
Private Sub Form_Load () Dim ver As Integer Dim major As Integer Dim minor As Integer Ver = GetVersion () major = ver And &HFF minor = (ver And &HFF00) \ 256 If major <> 3 And minor <> 10 Then MsgBox "版本不正確!" Exit Sub End If End Sub
程序中判斷Windows的安裝目錄
一般VB開(kāi)發(fā)出來(lái)的程序包含vbrun300.dll等輔助文件和.vbx文件,它們均需安裝到Windows目錄(c:\windows)或Windows的系統(tǒng)目錄(c:\windows\system)下,但因?yàn)橛脩舭惭bWindows時(shí)可能會(huì)改變Windows的目錄名(如c:\windows),使用安裝軟件后,不能正確運(yùn)行.API中提供的GetwinDowsdirectory或GetSystemDirectory較好地解決了這個(gè)問(wèn)題。函數(shù)聲明如下:
Declare Function GetSystemDirectory Lib "Kernel"(ByVal lpBuffer As String,ByVal nSize As Integer) As Integer
其中參數(shù)lpbuffer為字串變量,將返回實(shí)際Windows目錄或Windows的系統(tǒng)目錄,nsize為lpbuffer的字串變量的大小,函數(shù)返回值均為實(shí)際目錄的長(zhǎng)度。檢查VB.NET API函數(shù)如下:
Function checkdir() As Boolean Dim windir As String * 200 Dim winsys As String * 200 Dim winl As Integer Dim wins As Integer Dim s1 As String Dim s2 As String winl = GetWindowsDirectory(windir,200) winl = GetSystemDirectory(winsys,200) s1 = Mid $(windir,1,winl) s2 = Mid $(winsys,1,wins) If Wins = 0 Or wins = 0 Then checkdir = False Exit Function End If If s1 <> "C:\WINDOWS" Or s2 <> "C:\WINDOWS\SYSTEM" Then checkdir = False Exit Function End If checkdir = True End Function
shell 出現(xiàn)的問(wèn)題
通常編程時(shí)要調(diào)用外部程序,VB提供了shell()函數(shù),但是如果shell調(diào)用的外部程序找不到,則運(yùn)行的程序失去控制,VB給出提示"filenotfound",改變這種現(xiàn)象,要在程序中加入onerrorgoto,比較麻煩,VB.NET API函數(shù)中的winexec很好地解決了這個(gè)問(wèn)題。函數(shù)聲明如下:
Declare Function WinExec Lib "Kernel"(ByVal lpCmdLine As String, ByVal nCmdShow As Integer) As Integer
其中l(wèi)pCmdline為調(diào)用的外部文件名,NcmdShow為外部程序的運(yùn)行狀態(tài),如隱藏窗口、最小化窗口等等。如返回值大于32表示執(zhí)行功能,否則返回錯(cuò)誤碼。例程如下:
sub command1_click ds i as integer i=winexec("notepad.exe","c:\wst.txt",9) '參數(shù)9 即SW_RESTORE,也就是激活并顯示窗口 if i>32 then msgbox "調(diào)用正確!!" else msgbox "調(diào)用錯(cuò)誤!!" end if end sub
以上是“VB.NET API函數(shù)怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。