Jacob 调用金税系统

Jacob 调用金税系统1.调用打印方法时,若是有预览弹窗提示,程序会阻塞住,并在控制台打印一行:C:\ProgramFiles(x86)\��Ʊ���\914601007603699430.0\Config\Print\PrinterManager.xml(乱码部分是金税盘中文路径名)经检测,此文件是打印机选择文件,已安装过的的打印机,此文件编码未知,用编辑器试了好几种编码格式打开打开都是一堆乱码。若是…

大家好,又见面了,我是你们的朋友全栈君。

1.调用打印方法时,若是有预览弹窗提示,程序会阻塞住,并在控制台打印一行:

C:\Program Files (x86)\��Ʊ���\914601007603699430.0\Config\Print\PrinterManager.xml  (乱码部分是金税盘中文路径名)

经检测,此文件是打印机选择文件,已安装过的的打印机,此文件编码未知,用编辑器试了好几种编码格式打开打开都是一堆乱码。若是删掉此文件之后再打印,则会生成新的PrinterManager.xml文件,但是找不到金税发票专用打印机,不过能找到别的打印机(若是主机上还有连的话)。解决办法是将新的PrinterManager.xml文件删除,旧的PrinterManager.xml文件从回收站里还原。

Jacob 调用金税系统

 

不过金税系统的打印预览窗口并不一定是跳到桌面最前端(10次可能有2次,还极有可能是后面2次),还以为功能没实现,金税接口有bug,一度为此而焦躁卡壳。后来偶然发现是隐藏到了打开的IDE和其他软件后面,将这些软件最小化后或关闭后终于发现了这个令人无比蛋疼的预览弹窗。

 Jacob 调用金税系统

 

   @PostConstruct
    public void postConstruct() {
        ComThread.InitSTA(); // 启动线程
        goldTaxCOM = ActiveXComponent.createNewInstance(taxComName);
        BillHelper.TaxCOM = taxComName;
        ComThread.Release();    //不能在此释放资源,否则出现如下错误
    }

   @PreDestroy
    public void postDestroy() {
    
    
        ComThread.Release();    //在此释放OK
    }

 

 1 java.lang.IllegalStateException: Dispatch not hooked to windows memory
 2 at com.jacob.com.Dispatch.throwIfUnattachedDispatch(Dispatch.java:288) ~[jacob-1.19.jar:na]
 3 at com.jacob.com.Dispatch.call(Dispatch.java:528) ~[jacob-1.19.jar:na]
 4 at com.everjiankang.goldentax.util.BillHelper.openCard(BillHelper.java:42) ~[classes/:na]
 5 at com.everjiankang.goldentax.service.impl.GoldentaxServiceImpl.printInvoice(GoldentaxServiceImpl.java:147) [classes/:na]
 6 at com.everjiankang.goldentax.controller.GoldentaxController.printInvoice(GoldentaxController.java:67) [classes/:na]
 7 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_152]
 8 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_152]
 9 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_152]
10 at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_152]
11 。。。。。。

 

转载于:https://www.cnblogs.com/guchunchao/p/9967214.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132003.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 一个wml的实例(原创)

    一个wml的实例(原创)

    2021年7月28日
  • JS数据类型之基本数据类型

    JS数据类型之基本数据类型一、数据类型简介:1.JavaScript(以下简称js)的数据类型分为两种:原始类型(即基本数据类型)和对象类型(即引用数据类型);2.js常用的基本数据类型包括undefined、null、number、boolean、string;3.js的引用数据类型也就是对象类型Object,比如:Object、array、function、data等;二、基本数据类型特点:1.基本…

    2022年9月6日
  • 半监督之mixmatch

    半监督之mixmatch自洽正则化:以前遇到标记数据太少,监督学习泛化能力差的时候,人们一般进行训练数据增广,比如对图像做随机平移,缩放,旋转,扭曲,剪切,改变亮度,饱和度,加噪声等。数据增广能产生无数的修改过的新图像,扩大训练数据集。自洽正则化的思路是,对未标记数据进行数据增广,产生的新数据输入分类器,预测结果应保持自洽。即同一个数据增广产生的样本,模型预测结果应保持一致。此规则被加入到损失函数中,有如下形式,其中x是未标记数据,Augment(x)表示对x做随机增广产生的新数据,θ是模型参数,y是模型预测结.

    2022年10月23日
  • IDEA使用教程_超级cd使用教程

    IDEA使用教程_超级cd使用教程idea启动后会在cpan当前用户下生成一个C:\Users\Crystal.IntelliJIdea2018.1文件夹,这个文件夹里面有两个子文件夹config和system。删除这两个文件夹,idea在启动时候会重新配置。idea的project类似于eclipse的workspace;idea的modue类似于eclipse的project;配置都是在setti…

    2022年8月26日
  • Nginx 配置 HTTPS 完整过程[通俗易懂]

    Nginx 配置 HTTPS 完整过程[通俗易懂]配置站点使用https,并且将http重定向至https。1.nginx的ssl模块安装查看nginx是否安装http_ssl_module模块。$/usr/local/nginx/sbin/nginx-V![在这里插入图片描述](https://img-blog.csdnimg.cn/2018112610054317.png)如果出现configure…

    2022年7月14日
  • bfs是什么意思_bfs实现

    bfs是什么意思_bfs实现Rubik 先生在发明了风靡全球的魔方之后,又发明了它的二维版本——魔板。这是一张有 8 个大小相同的格子的魔板:1 2 3 48 7 6 5我们知道魔板的每一个方格都有一种颜色。这 8 种颜色用前 8 个正整数来表示。可以用颜色的序列来表示一种魔板状态,规定从魔板的左上角开始,沿顺时针方向依次取出整数,构成一个颜色序列。对于上图的魔板状态,我们用序列 (1,2,3,4,5,6,7,8) 来表示,这是基本状态。这里提供三种基本操作,分别用大写字母 A,B,C 来表示(可以通过这些操作改变魔板

    2022年8月9日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号