一、準(zhǔn)備工作
先了解一下概念,JACOB 就是 JAVA-COM Bridge的縮寫(xiě),提供自動(dòng)化的訪問(wèn)com的功能,也是通過(guò)JNI功能訪問(wèn)windows平臺(tái)下的com組件或者win32系統(tǒng)庫(kù)的。這是一個(gè)開(kāi)始于1999年的開(kāi)源項(xiàng)目的成果,有很多使用者對(duì)該項(xiàng)目進(jìn)行了修改,做出了自己的貢獻(xiàn)。
的支持地點(diǎn):http://groups.yahoo.com/group/jacob-project
Jacob下載地址:
http://sourceforge.net/project/showfiles.php?group_id=109543&package_id=118368
這里下載的是目前最新的Jacob1.9的Release版。
二、安裝Jacob
Jacob的安裝非常的簡(jiǎn)單,我們解開(kāi)下載的jacob_1.9.zip,在文件夾中找到j(luò)acob.dll和jacob.jar兩個(gè)文件。Jacob直接放到系統(tǒng)的system32文件夾下就行了,連注冊(cè)都不用的(或者拷貝到j(luò)dk或者jre的bin目錄下也行,當(dāng)前測(cè)試文件所在的目錄也行,就是只要在java.library.path中就可以)。而jacob.jar設(shè)置到classpath中去就可以了,或者在IDE開(kāi)發(fā)環(huán)境的工程中設(shè)置擴(kuò)展庫(kù)也一樣的。
做好上面的工作,就可以正常使用了。
三、實(shí)例演示
創(chuàng)建下面的測(cè)試文件:
////////////////////////////////////////////////
//AppTest.java
///////////////////////////////////////////////
import com.jacob.com.*;
import com.jacob.activeX.*;
public class AppTest
{
public static void main(String[] args)
{
// create COM component in event thread
ActiveXComponent sC = new ActiveXComponent("ScriptControl");
Dispatch sControl = sC.getObject();
Dispatch.put(sControl, "Language", "VBScript");
// use COM component in same thread
Variant v = Dispatch.call(sControl, "Eval", args[0]);
System.out.println(v.toString());
}
}
打開(kāi)命令行模式,到j(luò)ava文件所在的目錄,鍵入命令:
javac AppTest.java
java AppTest 1+2*3
輸出結(jié)果將會(huì)是:
7
先了解一下概念,JACOB 就是 JAVA-COM Bridge的縮寫(xiě),提供自動(dòng)化的訪問(wèn)com的功能,也是通過(guò)JNI功能訪問(wèn)windows平臺(tái)下的com組件或者win32系統(tǒng)庫(kù)的。這是一個(gè)開(kāi)始于1999年的開(kāi)源項(xiàng)目的成果,有很多使用者對(duì)該項(xiàng)目進(jìn)行了修改,做出了自己的貢獻(xiàn)。
的支持地點(diǎn):http://groups.yahoo.com/group/jacob-project
Jacob下載地址:
http://sourceforge.net/project/showfiles.php?group_id=109543&package_id=118368
這里下載的是目前最新的Jacob1.9的Release版。
二、安裝Jacob
Jacob的安裝非常的簡(jiǎn)單,我們解開(kāi)下載的jacob_1.9.zip,在文件夾中找到j(luò)acob.dll和jacob.jar兩個(gè)文件。Jacob直接放到系統(tǒng)的system32文件夾下就行了,連注冊(cè)都不用的(或者拷貝到j(luò)dk或者jre的bin目錄下也行,當(dāng)前測(cè)試文件所在的目錄也行,就是只要在java.library.path中就可以)。而jacob.jar設(shè)置到classpath中去就可以了,或者在IDE開(kāi)發(fā)環(huán)境的工程中設(shè)置擴(kuò)展庫(kù)也一樣的。
做好上面的工作,就可以正常使用了。
三、實(shí)例演示
創(chuàng)建下面的測(cè)試文件:
////////////////////////////////////////////////
//AppTest.java
///////////////////////////////////////////////
import com.jacob.com.*;
import com.jacob.activeX.*;
public class AppTest
{
public static void main(String[] args)
{
// create COM component in event thread
ActiveXComponent sC = new ActiveXComponent("ScriptControl");
Dispatch sControl = sC.getObject();
Dispatch.put(sControl, "Language", "VBScript");
// use COM component in same thread
Variant v = Dispatch.call(sControl, "Eval", args[0]);
System.out.println(v.toString());
}
}
打開(kāi)命令行模式,到j(luò)ava文件所在的目錄,鍵入命令:
javac AppTest.java
java AppTest 1+2*3
輸出結(jié)果將會(huì)是:
7