中国仿真科技论坛电子期刊 第 1 期
注: 任何转载或摘抄请注明文章出处 (中国仿真互动 http://www.Simwe.com/ )
- 1 -
LabVIEW中如何调用 Windows API
Lancker( 原 Simwe 虚拟仪器技术版管理员,创建人之一)
「LabVIEW 没有提供这样的功能, 必须呼叫 Windows API 」, 有时候笔者常看到有些朋友会问许多
问题,实在是因为 LabVIEW本身不提供这些功能,或者实现很困难,所以才会这样回答。 虽然这样回答
有点偷懒, 或者说不负责任, 但这的确是事实, LabVIEW 所提供的模块 , 虽然也不在少数, 但是主要
用于测控软件开发,要想变点花样,通常是行不通的,这是笔者决定开始撰写本文的主要原因。
感觉上 LabVIEW 程式要呼叫 Windows API 是一件比较困难的事情,或者说比较麻烦的事情,但别忘
了 Windows API 是大家的,凡是在 Windows 工作环境底下执行的应用程式,都有权利呼叫 Windows API。
其实 LabVIEW和 Visual C++/Visual Basic/Delphi 等开发软件一样,可以呼叫 API,而且实现比较方便,
与调用其他动态连接库文件( .DLL)几乎一样。
(笔者个人认为要做到将 API 函数灵活调用到 LV, 最好有 VC/VB编程基础。我觉得如果花一两个月学
习 VB,对与 LV 的提高会起到意想不到的效果。 VB和 LabVIEW都是电子工程师喜欢用于开发测试软件的工
具,其中有许多相似之处。它们具有入门简单,方便地调用 / 移植其他代码。 VB调用 API 的参考资料很多,
但介绍如何在 LV 中调用 API 的资料却为数不多。本人写这篇文章,虽然错误难免,但还是希望对大家有
所帮助。)
1、Windows API 简介:
1.1 简介:
Windows 作为多线程系统除了协调应用程式的执行、分配记忆体、管理系统资源…之外, 她同时也
是一个很大的服务中心, 呼叫这个服务中心的各种服务 ( 每一种服务就是一个函数 ) , 可以帮应用程式达
到开启视窗、描绘图形、使用周边设备…等目的, 由於这些函数服务的对象是应用程式 (Application) ,
所以便称之为 Application Programming Interface , 简称 API 函数。
1.2 但 Windows API 与 C 语言最亲近
虽然说呼叫 Windows API( 以下简称 API 或 API 函数 ) 是每一个应用程式的权利, 但不可否认的
API 却与 C 语言最亲近, 因为 API 函数在参数的传递上就是以 C 语言为标准。
但这并不表示 LV 程式不能呼叫含有参数的 API 函数, 如果传递的参数是单纯的资料型别, 例如「整
数」, 则 LV 与 C 语言还是相通的, 如果是特殊的资料型别 ( 包含「字串」 ) , 则必须遵循一定的规范,
否则不是无法得到正确的结果, 就是因为违反规定而被踢出系统。
2、使用 Windows API 的难处
当我们要开始使用 API 时, 必须知道叁件事情: (1) 要呼叫哪一个 API 函数;(2) 如何在 LV 中调用 API
函数;( 3) 如何传递参数。
2.1 要呼叫哪一个 API 函数