VB6实现海康摄像机字符叠加

qq_32496177 2018-08-25 11:12:38
以下是结构体声明和操作函数声明

'字符叠加参数子结构体

Type NET_DVR_SHOWSTRINGINFO
wShowString As Integer '预览的图象上是否显示字符:0-不显示,1-显示(显示区域范围为704*576,单个字符的大小为32*32)
wStringSize As Integer '该行字符的长度,不能大于44个字符
wShowStringTopLeftX As Integer '字符显示位置的x坐标
wShowStringTopLeftY As Integer '字符显示位置的y坐标
sString As String * 44 '要显示的字符内容
End Type

'字符叠加参数结构体

Type NET_DVR_SHOWSTRING
dwSize As Long '结构体大小
struStringInfo(MAX_STRINGNUM) As NET_DVR_SHOWSTRINGINFO '要显示的字符内容
End Type

'设置参数大配置接口(NET_DVR_SetDVRConfig)
Public Declare Function NET_DVR_SetDVRConfig Lib "HCNETSDK.dll" ( _
ByVal lUserID As Long, _
ByVal dwCommand As Long, _
ByVal lChannel As Long, _
lpInBuffer As Any, _
ByVal dwInBufferSize As Long) As Long


'获取参数大配置接口(NET_DVR_GetDVRConfig)
Public Declare Function NET_DVR_GetDVRConfig Lib "HCNETSDK.dll" ( _
ByVal lUserID As Long, _
ByVal dwCommand As Long, _
ByVal lChannel As Long, _
lpOutBuffer As Any, _
ByVal dwOutBufferSize As Long, _
ByRef dwReturned As Long) As Long

我这样写,可怎么也不对啊。
Dim sTr As NET_DVR_SHOWSTRING

Dim Size As Long
Dim Pro As Long
Dim Reture As Long

sTr.dwSize = LenB(NET_DVR_SHOWSTRING)
sTr.struStringInfo(0).sString = "Yan"
sTr.struStringInfo(0).wShowString = 1
sTr.struStringInfo(0).wShowStringTopLeftX = 100
sTr.struStringInfo(0).wShowStringTopLeftY = 100
sTr.struStringInfo(0).wStringSize = LenB(sTr.struStringInfo(0).sString)


Size = LenB(sTr)
Pro = VarPtr(sTr)

bbof = NET_DVR_GetDVRConfig(hLoginId, 130, 1, Pro, Size, Reture)

bbof = NET_DVR_SetDVRConfig(hLoginId, 131, 1, Pro, Size)
...全文
1295 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2018-08-25
  • 打赏
  • 举报
回复


刚才回复后,看了一下你的“发贴历史”,看来我的回复也是“无满意结贴”了。
舉杯邀明月 2018-08-25
  • 打赏
  • 举报
回复
也许你的那两个“Type”定义不正确。

相信“官方”给出的结构体定义不可能是VB6格式的,这两个类型定义肯定是你自己“翻译”的。
那么问题来了:
谁知道你自认为正确的“翻译”,是否真的正确呢…………

要是你敢说“保证无误”,那我觉得,你也许没必要在这发帖子了。
qq_32496177 2018-08-25
  • 打赏
  • 举报
回复
怎么没人了啊,自己先顶一下下,加分了啊!

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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