VB获取WebAccess点值的方法
许多场合中,客户需要自己写程序来获取WebAccess的点值,常见的如编写VB程序、VC程序等。那么如何获取点值呢,本文介绍一种VB获取WebAccess点值的方法。
1.
新建VB工程,设计界面,此例中设计两个按钮,[ReadValue]按钮从WebAccess中读取点值到三个Lable中,[WriteValue]按钮则将三个文本框的数值写到WebAccess中:
2.
引入Viewdll.bas,用于与WebAccess数据交互。点击菜单栏中的[工程],在弹出的下拉菜单中选择[添加文件],打开添加文件窗口,如下图,在该窗口中选中Viewdll.bas。
3.
在程序初始化时,需要初始化viewdll并获取IO点对应ID,代码如下:
Private Sub Form_Load()
Dim lRet As Long
lRet = VdBroadWinKrlInit
If lRet <= 0 Then
Exit Sub
End If
Dim taglist(3) As String
taglist(0) = "Tag_01"
taglist(1) = "Tag_02"
taglist(2) = "Tag_03"
m_lGroup = VdBroadWinInitTagGroupClosed(taglist)
For i = 0 To 2
VdBroadWinGetId m_vTagID(i), taglist(i)
Next
End Sub
3.1
在调用任何viewdll函数之前,必须先调用VdBroadWinKrlInit;
3.2
将点名依次复制到一个字符串数组中;
3.3
调用VdBroadWinGetId,传入点名字符串数组,获取ID;
4.
ReadValue按钮读取点值,显示到Lable上,代码如下:
Private Sub CmdReadValue_Click()
Dim sValue As String
For i = 0 To 2
Dim lRet As Long
lRet = VdBroadWinGetValueText(m_vTagID(i), sValue, nAlarm)
If lRet <= 0 Then
Exit Sub
End If
LblValue(i) = sValue
Next
End Sub
其中,VdBroadWinGetValueText可以获取点值;
5.
WriteValue按钮将文本框的值写入到点值,代码如下:
Private Sub CmdWriteValue_Click()
For i = 0 To 2
VdBroadWinSetValueText m_vTagID(i), TxtValue(i)
Next
End Sub
其中,VdBroadWinSetValueText可以写入点值到WebAccess中;
6.
在程序结束时,需要释放viewdll资源,代码如下:
Private Sub Form_Terminate()
VdBroadWinFreeTagGroupClosed m_lGroup
VdBroadWinKrlFree
End Sub
楼主最近还看过