在VB中调用API函数

 API函数大多在windows/system32/user32文件夹的kernel等动态链接库文件中,现在列举一个需要调用API函数的程序(本例程序使用的工具是VB)来简单介绍一下如何在程序中调用API。

1、首先在VB中新建一个标准EXE的工程,如下图所示。

2、在控件工具条中拖放一个Label,将其属性名改为“修改系统时间”;拖放一个Frame,将其左上角的“Frame1”改为“修改时间”;依次拖放3个TextBox,将其Text设为空(即删掉Text1,Text2,Text3),并将(名称)依次改为Texthour,Textmin,Textsec(后面写代码需要用到);再依次拖放3个Label,将其属性名改为“时”、“分”、“秒”;拖放两个CommandButton,将其Caption属性改为“确定”和“取消”。Form1窗口设计如下图所示。

3、下面是Form1窗口对应的代码,在通用中声明GetSystemTime和SetSystemTime两个API函数。

Option Explicit
Private Declare Sub GetSystemTime Lib "kernel32" (lpTime As SYSTEMTIME)
Private Declare Function SetSystemTime Lib "kernel32" (lpTime As SYSTEMTIME) As Long
Private Type SYSTEMTIMEwYear As IntegerwMonth As IntegerwDayOfWeek As IntegerwDay As IntegerwHour As IntegerwMinute As IntegerwSecond As IntegerwMilliseconds As Integer
End Type
Dim time As SYSTEMTIME
Private Sub Command1_Click()
Dim hour As Integer
hour = Texthour.Text - 8    '北京时间
With time.wHour = IIf(hour > 0, hour, hour + 24)    '世界时间.wMinute = Textmin.Text.wSecond = Textsec.Text
End With
SetSystemTime time
End SubPrivate Sub Command2_Click()
Unload Form1
End Sub
Private Sub Form_Load()GetSystemTime timeWith timeTexthour.Text = .wHour + 8    '北京时间Textmin.Text = .wMinuteTextsec.Text = .wSecondEnd With
End Sub


4、点击“运行 | 启动”后的结果如下图所示。

5、修改系统时间,如下图所示。

6、修改后发现系统时间已经更改,如下图所示。

说明:

1、声明API函数的方法为:Declare Function (或Sub)API函数名称lib dll文件名(该dll中包含需要声明的API函数)(参数)。
2、如本例中,SetSystemTime为声明的API函数名称,它所在的dll文件名为kernel,lib为固定语法结构,意思为lib前面的API函数包含在其后的dll文件中。现在声明SetSystemTime这个API函数的时候,就可以写成:Declare Function SetSystemTime Lib “kernel32” (lpTime As SYSTEMTIME) As Long。
3、一般在写程序时,需要用到API函数,就必须对其声明。
4、当声明成功后,就可以在窗口登录时通过GetSystemTime得到当前系统时间,再将其赋予3个文本框(分别代表时、分、秒)。在“确定”按钮事件中,将3个文本框中的数据通过SetSystemTime函数赋予系统。
5、通过本例子说明一下声明API函数的方法以及如何调用API函数,对API函数及其使用方法有个初步的了解,要想深入学习API函数,还需要更多时间做些实验,在实验中不断提高对API函数掌握的熟练程度。

在VB中调用API函数相关推荐

  1. C#中调用API函数RegisterHotKey注册多个系统热键

    转自:http://www.kkee.cn/article.asp?id=84要设置快捷键必须使用user32.dll下面的两个方法. BOOL RegisterHotKey( //注册系统热键的AP ...

  2. Delphi中调用API函数经验点滴(二)

    2019独角兽企业重金招聘Python工程师标准>>> 二.弹出模式化对话框 在Delphi中,提供模式化对话框的方法很多,现对几种比较常用的方法做如下比较: 1) 直接调用Wind ...

  3. C#中对 API函数的调用

    C#中对 API函数的调用  1                                              C#中对 API函数的调用  2  3  4    using System ...

  4. 在VB 中调用动态连接库

    在VB 中调用动态连接库   2001-11-08· · ··yesky 1 2 3 4 5 6 7 8  下一页 作为一种简单易用的Windows开发环境,Visual Basic从一推出就受到了广 ...

  5. vb调用本地html,在VB中调用HTMLHELP文件VB -电脑资料

    在 VB 中调用HTMLHELP文件 湖北省襄樊市劳动保险处 闫东 ---- HTML帮助文件是 WINDOWS 基本帮助系统的一种新标准,在WINDOWS 98中我们到处都可以看到它的身影, 在VB ...

  6. Linux 编程中的API函数和系统调用的关系【转】

    转自:http://blog.chinaunix.net/uid-25968088-id-3426027.html 原文地址:Linux 编程中的API函数和系统调用的关系 作者:up哥小号 API: ...

  7. C/C++中调用api设置mysql连接的编码方式

    MySQL在C/C++中调用api设置连接mysql的编码方式有以下几种方法: 1. mysqli_set_charset 调用示例: [cpp] view plain copy ret = mysq ...

  8. 本地方法(JNI)——从java 程序中调用C函数

    [0]README 1) 本文部分文字描述 转自 core java volume 2 , 旨在理解 本地方法--从java 程序中调用C函数 的基础知识 : 2) for source code, ...

  9. python中调用C++函数

    python中调用C++函数 无参调用 单变量传入与返回调用 numpy数组传入与返回调用 c++类调用 用python写不香吗?还这么复杂调用C++? 一. 无参调用 在python中调用无参数和无 ...

  10. Python ctypes 调用API函数模拟键盘鼠标事件

    在Python编程中, 有时需要模拟键盘或鼠标事件, 自动操作计算机, 比如玩游戏等. 本文介绍使用ctypes模块调用API函数, 模拟键盘鼠标事件的方法. 目录 1.导入ctypes模块 2.通过 ...

最新文章

  1. Python常用库使用笔记
  2. 千万级并发!如何设计一个多级缓存系统?
  3. 在Foreda8上安装libaio-0.3.105-2.i386.rpm
  4. Acwing第 18 场周赛【完结】
  5. Day16:面向对象编程——类和对象
  6. 截取AVI格式的视频C语言代码
  7. 使用Hexo搭建专属Blog
  8. linux网络代码结构
  9. 华为设备如何将接口配置为中继模式_(完整版)华为设备基本配置命令
  10. 破解vysor为专业版
  11. RGB色彩模式下的色值与整数之间的互转方法
  12. 软件开发项目 衡量指标_不衡量开发人员—衡量项目
  13. Spring Cloud Eureka源码分析之心跳续约及自我保护机制
  14. 72个嵌入式技术网站
  15. 新浪微博长链接字数统计问题
  16. 全中国的程序员,联合起来
  17. verilog中一文搞懂有限状态机(FSM)Mealy和Moore状态机(及一段式,二段式,三段式)
  18. 一起赚美金:Niche站变现案例分享(2)
  19. 推荐一个会非常好用的记事本工具 ediray
  20. 计算机科学专业的五种高薪职业选择,看看你适合哪种?

热门文章

  1. java的Jaas授权与鉴权
  2. 使用sm2签名并验签efi文件
  3. 【Redis 开发与运维】初识 Redis
  4. oppok3如何刷机_oppok3刷机方法
  5. 谷歌浏览器离线安装包下载
  6. 关于putty中的psftp、ftp上传下载的基本操作
  7. MATLAB数学建模:智能优化算法-人工鱼群算法
  8. Axure 9.0激活码亲测可用
  9. opendds简单入门(二)
  10. 【web前端开发】vs code插件推荐