📄 dasvrsdk.bas
字号:
Attribute VB_Name = "DASVRSDK"
Option Explicit
Global Const ClsID = "{2528E841-0DD3-4A5C-B425-D18910D47D1F}"
Global Const ProgID = "OPC.ASVBDEMO.1"
Global Const Description = "Agilewill co.ltd"
Global Const OPC_STATUS_RUNNING = 1
Global Const OPC_STATUS_FAILED = OPC_STATUS_RUNNING + 1
Global Const OPC_STATUS_NOCONFIG = OPC_STATUS_FAILED + 1
Global Const OPC_STATUS_SUSPENDED = OPC_STATUS_NOCONFIG + 1
Global Const OPC_STATUS_TEST = OPC_STATUS_SUSPENDED + 1
''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: CreateServer
'功能 : 创建OPC服务器
'参数说明: pClass 类标识 必须是一个合法的GUID
' ServerRate 服务器标签刷新速率
''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function CreateServer Lib "ASOPCDA.DLL" (ByVal pClass As String, ByVal ServerRate As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: FreeServer
'功能 : 释放OPC服务器
''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function FreeServer Lib "ASOPCDA.DLL" () As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: ActiveCode
'功能 : 用户名/序列号激活服务器
''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function ActiveCode Lib "ASOPCDA.DLL" (ByVal lpName As String, ByVal lpCode As String) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: ShutDown
'功能 : 强行断开所有客户端连接
''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Sub Shutdown Lib "ASOPCDA.DLL" Alias "ShutDown" ()
''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetServerState
'功能 : 设置服务器运行状态
'参数说明: State 服务器运行状态 见OPC_STATUS常量声明
''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetServerState Lib "ASOPCDA.DLL" (ByVal State As Integer) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetServerInfo
'功能 : 设置服务器版本信息
'参数说明: VendorInfo 厂商名称
' wMajor 主版本号
' wMinor 副版本号
' wBuild 编译版本号
''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetServerInfo Lib "ASOPCDA.DLL" (ByVal VendorInfo As String, ByVal wMajor As Integer, ByVal wMinor As Integer, ByVal wBuild As Integer) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: RegServer
'功能 : 注册服务器
'参数说明: pClass 类标识 必须是一个合法的GUID
' Name 应用程序标识
' Descr 服务器注册说明
' ExePath 服务器可执行文件的路径
''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function RegServer Lib "ASOPCDA.DLL" (ByVal pClass As String, ByVal Name As String, ByVal Descr As String, ByVal ExePath As String) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: UnregServer
'功能 : 注销服务器
'参数说明: pClass 类标识 必须是一个合法的GUID
' Name 应用程序标识
''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function UnregServer Lib "ASOPCDA.DLL" (ByVal pClass As String, ByVal Name As String) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: RegTagEx
'功能 : 向服务器地址空间增加标签
'参数说明: Handle 上级标签句柄(用于树型地址空间,如果平面型地址空间值为0)
' Name 标签名称
' DataType 标签数据类型
' IsWriteable 标签可写标志 true - 可以写入 false - 只读
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function RegTagEx Lib "ASOPCDA.DLL" (ByVal Handle As Long, ByVal Name As String, ByVal DataType As Integer, ByVal AccessRight As Integer) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: RegTag
'功能 : 向服务器地址空间增加标签
'参数说明: Handle 上级标签句柄(用于树型地址空间,如果平面型地址空间值为0)
' Name 标签名称
' Value 初始化标签值
' InitialQuality 初始化标签值质量
' IsWriteable 标签可写标志 true - 可以写入 false - 只读
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function RegTag Lib "ASOPCDA.DLL" (ByVal Handle As Long, ByVal Name As String, ByVal Value As Variant, ByVal InitialQuality As Integer, ByVal AccessRight As Integer) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: UnregTag
'功能 : 从服务器地址空间删除标签
'参数说明: Handle 标签句柄
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function UnregTag Lib "ASOPCDA.DLL" (ByVal Handle As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: AddTagProperty
'功能 : 增加标签属性
'参数说明: TagHandle 标签句柄
' PropertyID 属性索引
' Description 标签属性说明
' Value 属性值
'返回值: 如果成功,返回标签的句柄,失败返回-1
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function AddTagProperty Lib "ASOPCDA.DLL" (ByVal Handle As Long, ByVal PropertyID As Long, ByVal Description As String, ByVal Value As Variant) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: AddTagProperty
'功能 : 增加标签属性
'参数说明: TagHandle 标签句柄
' PropertyID 属性索引
' Description 标签属性说明
' DataType 属性数据类型
'返回值: 如果成功,返回标签的句柄,失败返回-1
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function AddTagPropertyEx Lib "ASOPCDA.DLL" (ByVal Handle As Long, ByVal PropertyID As Long, ByVal Description As String, ByVal DataType As Integer) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetTagProperty
'功能 : 设置标签属性
'参数说明: TagHandle 标签句柄
' PropertyID 属性索引
' Description 标签属性说明
' Value 属性值
'返回值: 如果成功,返回标签的句柄,失败返回-1
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetTagProperty Lib "ASOPCDA.DLL" (ByVal Handle As Long, ByVal PropertyID As Long, ByVal Value As Variant) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetTagQualifier
'功能 : 设置树型地址空间标签的分隔符
'参数说明: Qualifier 标签分隔符
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetTagQualifier Lib "ASOPCDA.DLL" (ByVal Qualifier As String) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: UpdateTagWithTimeStamp
'功能 : 更新服务器地址空间标签数据
'参数说明: Handle 标签句柄
' Value 标签值
' Quality 标签值质量
' timestamp 标签值时间
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function UpdateTagWithTimeStamp Lib "ASOPCDA.DLL" (ByVal Handle As Long, ByVal Value As Variant, ByVal Quality As Integer, ByVal timestamp As FILETIME) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: UpdateTag
'功能 : 更新服务器地址空间标签数据
'参数说明: Handle 标签句柄
' Value 标签值
' Quality 标签值质量
'标签时间按照服务器时间设置
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function UpdateTag Lib "ASOPCDA.DLL" (ByVal Handle As Long, ByVal Value As Variant, ByVal Quality As Integer) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetWriteCallBack
'功能 : 设置服务器写数据回调函数
'参数说明: lpCallback 写回调函数指针
' 格式 WriteTag(ByVal Handle As Long, ByVal pNewValue As Variant, ByRef pDeviceError As Integer)
' Handle:标签句柄
' pNewValue:值
' pDeviceError: 写入成功标志
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetWriteCallback Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetWriteCallBackEx
'功能 : 设置服务器写数据回调函数
'参数说明: lpCallback 写回调函数指针
' 格式 WriteTag(ByVal Handle As Long, Byval PropID as long, ByVal pNewValue As Variant, ByRef pDeviceError As Integer)
' Handle:标签句柄
' PropID: 属性编号
' pNewValue:值
' pDeviceError: 写入成功标志
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetWriteCallbackEx Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetReadCallBack
'功能 : 设置服务器读数据回调函数
'参数说明: lpCallback 读回调函数指针
' 格式 ReadTag(ByVal Handle As Long, ByRef pNewValue As Variant, ByRef pQuality as Integer, byRef Timestamp as FILETIME)
' Handle:标签句柄
' pNewValue:值
' pQuality :质量
' Timestamp:时间戳
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetReadCallback Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetReadCallBackEx
'功能 : 设置服务器读数据回调函数
'参数说明: lpCallback 读回调函数指针
' 格式 ReadTag(ByVal Handle As Long, Byval PropID as Long, ByRef pNewValue As Variant, ByRef pQuality as Integer, byRef Timestamp as FILETIME)
' Handle:标签句柄
' PropID: 属性编号
' pNewValue:值
' pQuality :质量
' Timestamp:时间戳
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetReadCallbackEx Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetServerNotify
'功能 : 设置服务器实例建立、删除回调函数
'参数说明: lpCallback 写防范回调函数指针
' 格式 ServerNotify(hServer as Long, wOperateType as Integer)
' hServer - 服务器句柄
' wOperateType:0-建立连接 1-断开连接
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetServerNotify Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetGroupNotify
'功能 : 设置组操作回调函数
'参数说明: lpCallback 组操作回调函数指针
' 格式 GroupNotify(hServer as Long, hGroup As Long, Name as string, wOperateType as Integer)
' hServer:服务器句柄
' hGroup:组句柄
' Name:组名称
' wOperateType:0-建立组 1-删除组
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetGroupNotify Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetItemNotify
'功能 : 设置OPC标签映射增加、映射激活和映射删除回调函数
'参数说明: lpCallback 标签映射操作调函数指针
' 格式 ItemNotify(hServer as Long, hGroup As Long, hTag as Long, Active as Long, wOperateType as Integer)
' hServer:服务器句柄
' hGroup:组句柄
' hTag:标签句柄
' Active:激活标志
' wOperateType:0-映射标签 1-删除映射 2-激活/取消
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetItemNotify Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetTagNotify
'功能 : 设置客户端增加服务器地址空间中不存在的标签时调用函数
'参数说明: lpCallback 写防范回调函数指针
' 格式 TagNotify(hTag as Long, name as string, path as string; ByRef pError as long )
' hTag:服务器句柄
' name:标签名称
' path:访问路径
' pError: 错误标志 0-成功 1-失败
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetTagNotify Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'函数名称: SetLogNotify
'功能 : 设置服务器工具包输出信息回调函数
'参数说明: lpCallback 写防范回调函数指针
' 格式 LogNotify(msg as string)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Declare Function SetLogNotify Lib "ASOPCDA.DLL" (ByVal lpCallback As Long) As Long
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -