VB.Net使用接口的问题

[复制链接]
查看11 | 回复10 | 2021-1-27 05:57:25 | 显示全部楼层 |阅读模式
目前的目标:在VB.net中使用第三方提供的dll和他们的硬件通过串口进行通讯
现在第三方厂家提供了与他们硬件串口通讯的dll,他们提供的示例是在JScript写的
如下所示:
varreq:SYS_VERSION=newSYS_VERSION();
ZEngine.Send("Device1",req);//将该请求发送给,“device1”的串口设备

在VB.net中添加提供的dll,来进行程序编写,声明好对象好,不清楚如何继续,代码如下所示:

DimreadPanidReqAsNewZB_READ_CONFIGURATION
DimreadPanidInterfaceAsIREQUEST=CType(readPanidReq,IREQUEST)
readPanidReq.ConfigId=&H1
//MessageBox.Show(readPanidReq.ToString)

如何调用接口中的API,达到JScript中ZEngine.Send("Device1",req);的效果,即,如何将该请求数据发送给VB.net提供的串口(串口程序在网上有示例的代码)?
下面是官方提供的说明文档截图:








比较小白,基本处于无头绪状态,请大神们给指条明道,3q
分 -->
回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层
这种情况,最优先的想法不应该是自己去调用。而是要求厂家给你个例子。电话沟通好过自己闷头干。非技术方式解决有时候成本比较低。
回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层
引用1楼wuyazhe的回复:这种情况,最优先的想法不应该是自己去调用。而是要求厂家给你个例子。电话沟通好过自己闷头干。非技术方式解决有时候成本比较低。

官方已经给出了JScript的demo(看到的应该有4-5个)并给处于JScript的环境,在他提供的JScript的环境中模仿着调用接口命令执行也正常;
VB、C++等版本估计要开发者自己去完成,官方提供各版本Demo的可能性不大;
另外,本人英文比较烂,跟人家沟通比较困难。
现在要实现VB.net将命令发送串口设备执行,各类的变量有了,如何把请求通过串口send出去?望大神们指教
回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层
另外在ZLL中可到一个和Send("Device1",req)比较近似的


是否调用的方法的话,就类似这种?
回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层
这个dll提供了哪些类,其中有send方法吗
回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层


dll里面提供了串口的相关API

回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层
下面代码是JScript的示例:
ZEngine.add_OnMessageZPI2(this.MessageHandler);
functionMessageHandler(zportName:String,id:MESSAGE_ID,msg:Object)
{
}

在Dll中找到的相关类:



回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层
处理消息类的handle:


貌似自身水平,现在还不能把这些信息串起来
有个demo的话可能会理解的快一些。
回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层
ZEngine.Send("Device1",req);//将该请求发送给,“device1”的串口设备
ZEngine是什么类型,在哪声明的
回复

使用道具 举报

千问 | 2021-1-27 05:57:25 | 显示全部楼层
谢谢回复
ZEngine的描述如下图所示(在该厂家提供的编译环境里直接调用了):


dll中看到一个send方法:


请教个问题:论坛里怎么上传附件(把dll文件上传上来)?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行