vb写opc客户端 Item添加不上 也不报错?

zyzxiaojinzhu 2017-07-26 04:30:49
Option Base 1
Option Explicit
' OPC对象的声明
Dim WithEvents objServer As OPCServer
Dim objGroups As OPCGroups
Dim objTestGrp As OPCGroup
Dim objItems As OPCItems
Dim lServerHandles() As Long

Sub Connect(strProgID As String, Optional strNode As String)

If objServer Is Nothing Then
' 建立一个OPC服务器对象
Set objServer = New OPCServer
End If

If objServer.ServerState = OPCDisconnected Then
' 连接OPC服务器
objServer.Connect strProgID, strNode
End If

If objGroups Is Nothing Then
' 建立一个OPC组集合
Set objGroups = objServer.OPCGroups
End If

If objTestGrp Is Nothing Then
' 添加一个OPC组
Set objTestGrp = objGroups.Add("TestGrp")
End If

End Sub


Sub AddItem()
Dim strItemIDs(8) As String
Dim lClientHandles(8) As Long
Dim lErrors() As Long
Dim I As Integer

If objTestGrp Is Nothing Then
Exit Sub
End If

If Not objItems Is Nothing Then
If objItems.Count > 0 Then
Exit Sub
End If
End If

' 设置组活动状态
objTestGrp.IsActive = True
' 取消组非同期通知
objTestGrp.IsSubscribed = False

' 建立OPC项集合
Set objItems = objTestGrp.OPCItems

' 生成从TAG1到TAG8的项标识符
For I = 1 To 8
strItemIDs(I) = "TAG" & I
lClientHandles(I) = I
Next
' 添加OPC项
Call objItems.AddItems(8, strItemIDs, _
lClientHandles, lServerHandles, lErrors)


End Sub



[size=13px]其中objItems.AddItems执行完后,不报错,但是objltems.count始终为零,查了好多资料也没有找到原因,希望各位可以帮帮忙分析一下。[/size]
...全文
309 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
mylinden 2017-08-24
  • 打赏
  • 举报
回复
objltems.count是OPC服务器标签数 如果未在OPC服务上内建立TAG1到TAG8标签, 你在客户生成从TAG1到TAG8的项标识符,是读不到任何数据的。

16,549

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧