JACOB调用控件函数
背景介绍:
使用JAVA程序,实现对系统已安装控件方法的调用。
JACOB下载地址:http://danadler.com/jacob/
使用方法:
1.将jacob.jar添加到项目工程中
2.将jacob.dll复制到以下文件夹内:
C:\WINDOWS\system32
%JAVA_HOME%\bin
3.代码调用
/**此方法实现调用控件方法弹出本机已安装证书列表*/
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
public class PdfSeal {
/** * @param args */
public static void main(String[] args) {
// 创建ActiveX控件对象,可以使用CLSID,也可以使用ProgID (clsid是已安装控件的id)
ActiveXComponent activeX = new ActiveXComponent("clsid:F7101FFF-55C7-4ECC-903E-C1D8417507D1");
// MS级别的调度对象
Dispatch dispath = (Dispatch) activeX.getObject();
// 调用控件方法(第二个参数为控件函数名称,第三个参数起均为控件函数所需参数,需要几个传入几个即可)
Dispatch.callSub(dispath, "SelectCertificate", "", "", "");//无返回值
boolean result = Dispatch.call(dispath, "SelectCertificate", "", "", "").getBoolean();//有返回值,返回值是什么类型就通过get方法获得即可
System.out.println(result);
}
}
4.参考信息
http://www.danadler.com/jacob/
http://www.ibm.com/developerworks/cn/java/j-lo-jacob/
http://j2eemylove.iteye.com/blog/906842
http://blog.csdn.net/daditao/article/details/25045815
JACOB调用控件函数的更多相关文章
- C#跨窗体调用控件(委托回调函数使用例子)
问题: 有两个窗体,FORM1(含一个label控件,一个名为显示form2的button控件)和FORM2(含一个button控件).启动时,FORM1中点击button控件显示form2使FORM ...
- Android 使用代码主动去调用控件的点击事件(模拟人手去触摸控件)
使用代码主动去调用控件的点击事件(模拟人手去触摸控件) //View 可以是LinearLayout,Button,TextView View.performClick();
- C# 跨线程调用控件
在C# 的应用程序开发中, 我们经常要把UI线程和工作线程分开,防止界面停止响应. 同时我们又需要在工作线程中更新UI界面上的控件, 下面介绍几种常用的方法 阅读目录 线程间操作无效 第一种办法:禁 ...
- 《zw版·delphi与halcon系列原创教程》zw版_THOperatorSetX控件函数列表 v11中文增强版
<zw版·delphi与halcon系列原创教程>zw版_THOperatorSetX控件函数列表v11中文增强版 Halcon虽然庞大,光HALCONXLib_TLB.pas文件,源码就 ...
- 《zw版·delphi与halcon系列原创教程》zw版_THImagex控件函数列表
<zw版·delphi与halcon系列原创教程>zw版_THImagex控件函数列表 Halcon虽然庞大,光HALCONXLib_TLB.pas文件,源码就要7w多行,但核心控件就是两 ...
- emwin之错误使用控件函数导致死机现象
@2018-10-15 导致死机的代码示例如下 /** * @brief widget ID define * @{ */ #define ID_WINDOW_0 (GUI_ID_USER + 0x0 ...
- winform多线程调用控件
对多线程操作控件的理解: 控件不能被非创造他的线程修改.需调用控件.beginvoke,注入UI线程.控件.beginvoke会把操作加入UI线程,阻塞画面响应.不要把耗时的计算放在控件.beginv ...
- 【转载】C# 跨线程调用控件
转自:http://www.cnblogs.com/TankXiao/p/3348292.html 感谢原作者,转载以备后用 在C# 的应用程序开发中, 我们经常要把UI线程和工作线程分开,防止界面停 ...
- C# 跨线程调用控件的4中方法
原文:C# 跨线程调用控件 在C# 的应用程序开发中, 我们经常要把UI线程和工作线程分开,防止界面停止响应. 同时我们又需要在工作线程中更新UI界面上的控件, 下面介绍几种常用的方法 阅读目录 线 ...
随机推荐
- kafka 0.11 spark 2.11 streaming例子
""" Counts words in UTF8 encoded, '\n' delimited text received from the network every ...
- ios上有时候提交按钮点击两次才可以取消输入框软键盘
ios上有时候提交按钮点击两次才可以取消输入框软键盘,点击第一次软键盘消失,点击第二次输入框页面消失,这样用户体验不好.我的做法是用 touchstart 代替click来处理 反应快,但是有时候会出 ...
- mysql 字符串的处理
1.SUBSTRING 2.SUBSTRING_INDEX 3. right/left 4.POSITION sql实例 select left(right(SUBSTRING_INDEX(data_ ...
- 51nod 1179 最大的最大公约数 (打表计数法)
题目: 考虑清楚就简单了,我们把每个数的因子计数. 两个数的公约数就是计数超过2的数,然后找到最大的那个就好了. 计算每个数的素因子,记得sqrt(),不然会超时. 打表计数法时间复杂度O(n*sqr ...
- oracle11g文件系统库迁移到ASM库上面
最近把oracle11g的文件系统库迁移到了asm库上面. 迁移过程大致如下: 最少停机方案: 实例joinpay02 | |数据库joinpay02 需要改动的文件: 数据文件 控制文件 redo文 ...
- swift语言点评六-Numbers and Basic Values
Topics Logical Values struct Bool A value type whose instances are either true or false. Numeric Val ...
- RocketMQ学习笔记(9)----RocketMQ的Producer 顺序消息
1. 顺序消息原理图 2. 什么是顺序消息? 消费消息的顺序要求同发送消息的顺序一致,在RocketMQ中,主要指的是局部顺序,即一类消息为满足顺序性,必须Producer单线程顺序发送,并且发送给到 ...
- 洛谷P2607 [ZJOI2008]骑士 基环树动归
Code: #include<algorithm> #include<cstdio> #include<algorithm> #include<cstring ...
- 搭建appium环境
1.下载jdk1.8 配置环境变量 JAVA_HOME---------->你的jdk路径 path---------------------->%JAVA_HOME%\bin;%JAV ...
- cx-oracle-------------------安装
这个东西弄完就报错.... 这个是Oracle官方的方法:https://oracle.github.io/odpi/doc/installation.html#windows 然而,你懂的,不能用啊 ...