📄 testtypeinfo.java
字号:
import jp.ne.so_net.ga2.no_ji.jcom.*;
public class testTypeInfo {
/**
巜掕偝傟偨ProgID偺ITypeInfo傪尒傞
*/
public static void main(String[] args) throws Exception {
if(args.length!=1) {
System.out.println("usage: testTypeInfo <ProgID>");
System.out.println("椺 testTypeInfo Excel.Application");
return;
}
String progID = args[0];
ReleaseManager rm = new ReleaseManager();
try {
IDispatch disp = new IDispatch(rm, progID);
ITypeInfo typeInfo = disp.getTypeInfo();
// 僪僉儏儊儞僩傪昞帵
String[] docs = typeInfo.getDocumentation(-1);
System.out.println("docs[0]="+docs[0]);
System.out.println("docs[1]="+docs[1]);
System.out.println("docs[2]="+docs[2]);
System.out.println("docs[3]="+docs[3]);
// TYPEATTR傪昞帵
ITypeInfo.TypeAttr attr = typeInfo.getTypeAttr();
System.out.println("TYPEATTR.IID = "+attr.getIID());
System.out.println("TYPEATTR.tpekind = "+attr.getTypeKind());
System.out.println("TYPEATTR.cFuncs = "+attr.getFuncs());
System.out.println("TYPEATTR.cVars = "+attr.getVars());
System.out.println("TYPEATTR.cImplTypes = "+attr.getImplTypes());
/* for(int i=0; i<attr.getFuncs(); i++) {
ITypeInfo.FuncDesc funcdesc = typeInfo.getFuncDesc(i);
System.out.println(funcdesc);
// docs = typeInfo.getDocumentation(funcdesc.getMemID());
// System.out.println(docs[0]+docs[1]+docs[2]+docs[3]);
}
*/
IPersist persist = (IPersist)disp.queryInterface(
IPersist.class,
IPersist.IID);
GUID clsid = persist.getClassID();
System.out.println("CLSID="+clsid);
String progid = Com.getProgIDFromCLSID(clsid);
System.out.println("ProgID="+progid);
}
catch(Exception e) { e.printStackTrace(); }
finally { rm.release(); }
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -