gn1108的专栏

shared your knowledge in the world

jacob调用ocx控件的方法

1、java调用ocx,使用到jacob技术,具体部署环境可以去网上搜索一下。

2、例如有个ocx控件名为Gtwebdll.dll

    Gtwebdll.dll 控件说明

属性: 

              iComPort=1;       //设置PC串口端口号码COM1 1 表示.

              iBaudRate=9600;   //设置串口波特率.

              iBpPort=1;        //设置串口扩展盒端口.1表示A,2表示B,3表示C,4表示K.

   方法函数:

        SelBpPort();    //设置串口扩展盒端口函数.

3、Java demo

import com.jacob.com.Dispatch;
public class TestOcx {

	@SuppressWarnings("static-access")
	public int setBPBox(int comport, int baudrate, int bpport)
	{
		int recode = 0;
		try {
			//声明控件
			Dispatch msgBox = new Dispatch("CLSID:00A5A260-956A-49E4-82FF-58CE009742C5");
			
			Dispatch.put(msgBox, "iComPort", comport);
			Dispatch.put(msgBox, "iBaudRate", baudrate);
			Dispatch.put(msgBox, "iBpPort", bpport);
			msgBox.call(msgBox, "SelBpPort");
			
		} catch (Exception e) {
			e.printStackTrace();
			return -1;
		}
		return recode;
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		new TestOcx().setBPBox(3, 9600, 2);
	}
}


 

这个demo向串口3发送BP盒转口指令,运行demo得到监听数据如下

1  [00000000] IRP_MJ_CREATE                      Port Opened - javaw.exe

2  [00000000] IOCTL_SERIAL_SET_BAUD_RATE      Baud Rate: 9600

3  [00000000] IOCTL_SERIAL_SET_LINE_CONTROL   StopBits: 1, Parity: No, DataBits: 8

4  [00000000] IRP_MJ_WRITE                        Length: 0003, Data: 1B 25 42

5  [00000012] IRP_MJ_CLOSE                        Port Closed

4、实际应用中OCX属性,方法函数,事件状态,如何用jacob技术操作,可以去查找相关技术文档。

 

阅读更多
个人分类: java技术
上一篇表驱动的代码实现
下一篇同步设备IO
想对作者说点什么? 我来说一句

通过 JACOB 实现 Java调用ocx控件

2014年04月18日 430KB 下载

jacob技术开发文档

2018年05月25日 89KB 下载

java通过jacob调用ocx.rar

2012年10月19日 589KB 下载

jacob调用ocx控件灾难性故障

2014年03月05日 211KB 下载

JACOB各版本下载

2012年05月16日 1014KB 下载

没有更多推荐了,返回首页

关闭
关闭