打印机型号BTP-2100E,可打印二维码标签,效果如附件,将打印机的驱动bpladll.dll、ByUSBInt.dll和jnative的dll放到system32下面,项目导入jnative的jar包,使用USB接口
import org.xvolks.jnative.JNative;
import org.xvolks.jnative.Type;
import org.xvolks.jnative.exceptions.NativeException;
public class CopyOfDemo {
private static final String PRINTER_DLL = "bpladll.dll";
public static void main(String[] args) {
Demo demo = new Demo();
System.loadLibrary("bpladll");
JNative n = null;
try {
// 打开端口
n = demo.getJNativeByFunction("BPLA_OpenUsb");
n.setRetVal(Type.INT);
n.setParameter(0, Type.INT, "1");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_OpenUsb");
n = demo.getJNativeByFunction("BPLA_SetEnd");
n.setRetVal(Type.INT);
n.setParameter(0, Type.INT, "70");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_SetEnd");
n = demo.getJNativeByFunction("BPLA_Reset");
n.setRetVal(Type.INT);
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_Reset");
n = demo.getJNativeByFunction("BPLA_StartArea");
n.setRetVal(Type.INT);
n.setParameter(0, Type.INT, "0");
n.setParameter(1, Type.INT, "500");
n.setParameter(2, Type.INT, "10");
n.setParameter(3, Type.INT, "10");
n.setParameter(4, Type.INT, "0");
n.setParameter(5, Type.INT, "0");
n.setParameter(6, Type.INT, "0");
n.setParameter(7, Type.INT, "0");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_StartArea");
n = demo.getJNativeByFunction("BPLA_PrintTruetype");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "南京咸水鸭");
n.setParameter(1, Type.INT, "4");
n.setParameter(2, Type.INT, "210");
n.setParameter(3, Type.STRING, "微软雅黑体");
n.setParameter(4, Type.INT, "30");
n.setParameter(5, Type.INT, "0");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_PrintTruetype");
n = demo.getJNativeByFunction("BPLA_PrintTruetype");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "价格(元):35");
n.setParameter(1, Type.INT, "4");
n.setParameter(2, Type.INT, "180");
n.setParameter(3, Type.STRING, "微软雅黑体");
n.setParameter(4, Type.INT, "20");
n.setParameter(5, Type.INT, "0");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_PrintTruetype");
n = demo.getJNativeByFunction("BPLA_PrintTruetype");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "净重(千克):2.6");
n.setParameter(1, Type.INT, "4");
n.setParameter(2, Type.INT, "150");
n.setParameter(3, Type.STRING, "微软雅黑体");
n.setParameter(4, Type.INT, "20");
n.setParameter(5, Type.INT, "0");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_PrintTruetype");
n = demo.getJNativeByFunction("BPLA_PrintTruetype");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "单价(元/千克):15");
n.setParameter(1, Type.INT, "4");
n.setParameter(2, Type.INT, "120");
n.setParameter(3, Type.STRING, "微软雅黑体");
n.setParameter(4, Type.INT, "20");
n.setParameter(5, Type.INT, "0");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_PrintTruetype");
n = demo.getJNativeByFunction("BPLA_PrintTruetype");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "生产日期:12.11.20");
n.setParameter(1, Type.INT, "4");
n.setParameter(2, Type.INT, "90");
n.setParameter(3, Type.STRING, "微软雅黑体");
n.setParameter(4, Type.INT, "20");
n.setParameter(5, Type.INT, "0");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_PrintTruetype");
n = demo.getJNativeByFunction("BPLA_PrintTruetype");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "保质日期:12.12.08");
n.setParameter(1, Type.INT, "4");
n.setParameter(2, Type.INT, "60");
n.setParameter(3, Type.STRING, "微软雅黑体");
n.setParameter(4, Type.INT, "20");
n.setParameter(5, Type.INT, "0");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_PrintTruetype");
n = demo.getJNativeByFunction("BPLA_PrintTruetype");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "沃尔玛购物广场");
n.setParameter(1, Type.INT, "4");
n.setParameter(2, Type.INT, "30");
n.setParameter(3, Type.STRING, "微软雅黑体");
n.setParameter(4, Type.INT, "20");
n.setParameter(5, Type.INT, "0");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_PrintTruetype");
n = demo.getJNativeByFunction("BPLA_PrintQR");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "QA,123698547896325874125896325");
n.setParameter(1, Type.INT, "260");
n.setParameter(2, Type.INT, "70");
n.setParameter(3, Type.INT, "7");
n.setParameter(4, Type.INT, "2");//使用1 扫描枪能扫出结果 使用2手机能扫出结果
n.setParameter(5, Type.INT, "0");
n.setParameter(6, Type.INT, "27");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_PrintQR");
n = demo.getJNativeByFunction("BPLA_PrintTruetype");
n.setRetVal(Type.INT);
n.setParameter(0, Type.STRING, "xxoo公司");
n.setParameter(1, Type.INT, "260");
n.setParameter(2, Type.INT, "30");
n.setParameter(3, Type.STRING, "微软雅黑体");
n.setParameter(4, Type.INT, "20");
n.setParameter(5, Type.INT, "0");
n.invoke();
n = demo.getJNativeByFunction("BPLA_Print");
n.setRetVal(Type.INT);
n.setParameter(0, Type.INT, "1");
n.setParameter(1, Type.INT, "0");
n.setParameter(2, Type.INT, "1");
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_Print");
n = demo.getJNativeByFunction("BPLA_CloseUsb");
n.setRetVal(Type.INT);
n.invoke();
System.out.println(n.getRetVal() + ":BPLA_CloseUsb");
} catch (Exception e) {
e.printStackTrace();
} finally {
if (n != null) {
try {
n.dispose();
} catch (NativeException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
}
// 通过方法名取得JNative对象
public JNative getJNativeByFunction(String functionName) throws NativeException {
return new JNative(PRINTER_DLL, functionName);
}
}
- 大小: 4.6 KB
分享到:
相关推荐
使用JNative对条码打印机进行打印 因项目需要,对Godex EZ2300条码机进行调用打印, 驱动为Ez2000.dll, 用JNI可以实现调用,但比较麻烦, 需 要用到VC6进行DLL封装
java使用jnative操作二维码打印机,压缩包里有驱动和源码,java如何使用jnative,打印机驱动如何加载网上有资料
jbarcode+Jnative读取本地第三方的dll文件+得力+斑马打印机使用javaAPI打印 项目真正用到,兼容各种打印机的打印
java使用JNative调用动态连接库实例[文].pdf
java利用jnative调用DLL.txt
用的是中控的Biokey 开发工具,安装控件驱动神马的, 就不多说了,zkonline的SDK里都有,由于指纹需要在服务器端做比对,但SDK里只提供了DLL库的方式来解决比对问题,所以需要让java调用DLL库。。。在网上找到...
NULL 博文链接:https://unifocus.iteye.com/blog/678463
包含jna.jar,JNative.jar,VC++创建DLL例子,VC++调用DLL例子,JAVA-JNA、JNative调用DLL例子
JNative.jar , JNativeCpp.dll ,libJNativeCpp.so,java通过JNative调用动态dll所需的文件jar
java程序从edna数据库中提取数据,建立rmi服务,以及部署。
jnative使用方法总结jnative使用方法总结jnative使用方法总结
Jnative1.4_java调用动态库所需jar,里面包含了一个可以测试的动态库,可以自己拿下来玩玩。
jnative jnative jnative jnative
因工作的缘故,有机会接触了Java本地方法调用...使用Java的JNI调用C/C++的动态联结库有个固定的步骤,下面将以一个最简单的HelloWorld例子程序来说明调用过程。这个HelloWorld的例子只是简单的显示HelloWorld消息。
TestJNative_Eclipse.rar 为MyEclipse工程 JNativeTest_VC.rar为VC ...主要写了一些JNative调用DLL的例子,包含了JNative回调函数的用法与指针的用法,以供参考,希望对使用JNative的开发人员有帮助 有问题大家一起讨论
Java本地调用接口 JNative
利用JNative实现Java调用动态库.pdf
Jnative调用DLL进行开发的具体代码
JNative是目前比较简单的一个Java调用动态链接库jar包,使用简单,容易掌握,大家共同学习。
java连接dll文件的驱动,jnative.jar,ClassLibrary1.dll,JNativeCpp.dll