谈谈VB.NET API函数应用

网友投稿 285 2023-05-17

大家都知道VB开发的好处,而且它在Windows环境下越来越多的开发者采用。但如果要开发出专业的Windows软件,还需采用大量的VB.NET API函数,以下结合开发管理软件的经验谈几点体会。

程序中判定Windows的版本众所周知,Windows3.x各版本或多或少会有些差别,为了使开发程序避免出现莫名其妙的错误,***在程序运行前自动判定Windows的版本。采用API提供的函数getversion很容易实现这一点。函数声明如下: Declare Function GetVersion Lib"Kernel"() As Integer 此函数没有参数,返回值为Windows的版本号,其中版本号的低位字节为Windows的主版本号,版本号的高位字节返回Windows的次版本号。判别过程如下:

复制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   1.2.3.4.5.6.7.8.9.10.11.12.

程序中判断Windows的安装目录

一般VB开发出来的程序包含vbrun300.dll等辅助文件和.vbx文件,它们均需安装到Windows目录(c:\windows)或Windows的系统目录(c:\windows\system)下,但因为用户安装Windows时可能会改变Windows的目录名(如c:\windows),使用安装软件后,不能正确运行.API中提供的GetwinDowsdirectory或GetSystemDirectory较好地解决了这个问题。函数声明如下:
复制Declare Function GetSystemDirectory Lib "Kernel"(ByVal lpBuffer As    String,ByVal nSize As Integer) As Integer   1.2.

其中参数lpbuffer为字串变量,将返回实际Windows目录或Windows的系统目录,nsize为lpbuffer的字串变量的大小,函数返回值均为实际目录的长度。检查VB.NET API函数如下:

复制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   1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.

shell 出现的问题 通常编程时要调用外部程序,VB提供了shell()函数,但是如果shell调用的外部程序找不到,则运行的程序失去控制,VB给出提示"filenotfound",改变这种现象,要在程序中加入onerrorgoto,比较麻烦,VB.NET API函数中的winexec很好地解决了这个问题。函数声明如下:

复制Declare Function WinExec Lib "Kernel"(ByVal lpCmdLine As String,    ByVal nCmdShow As Integer) As Integer   1.2.

其中lpCmdline为调用的外部文件名,NcmdShow为外部程序的运行状态,如隐藏窗口、最小化窗口等等。如返回值大于32表示执行功能,否则返回错误码。例程如下:

复制sub command1_click    ds i as integer    i=winexec("notepad.exe","c:\wst.txt",9)    参数9 即SW_RESTORE,也就是激活并显示窗口    if i>32 then    msgbox "调用正确!!"    else    msgbox "调用错误!!"    end if    end sub   1.2.3.4.5.6.7.8.9.10.

【编辑推荐】

介绍VB.NET绘图方法的三个方面 快捷简单的VB.NET编程事件方法介绍 简单简述VB.NET绘制图形 三个案例揭秘VB.NET语法规则 VB.NET实例教程对关于Array问题的解决

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:有效避免骚扰:从用户体验角度看空号检测 API 的优势!
下一篇:免费可用的热门 API 大全整理分享
相关文章

 发表评论

暂时没有评论,来抢沙发吧~