📄 itypelib.java
字号:
package jp.ne.so_net.ga2.no_ji.jcom;
/**
ITypeLib僀儞僞乕僼僃乕僗傪埖偆偨傔偺僋儔僗
@see ITypeInfo
@see IUnknown
@see JComException
@see ReleaseManager
@author Yoshinori Watanabe(搉曈 媊懃)
@version 2.10, 2000/07/01
Copyright(C) Yoshinori Watanabe 1999-2000. All Rights Reserved.
*/
public class ITypeLib extends IUnknown {
/**
IID_ITypeLib 偱偡丅
@see GUID
*/
public static GUID IID = new GUID( 0x00020402, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46 );
/**
* ITypeLib傪嶌惉偟傑偡丅
* 堷悢pITypeLib偼ITypeLib僀儞僞乕僼僃乕僗偺億僀儞僞傪巜掕偟傑偡丅
* @param rm 嶲徠僇僂儞僞娗棟僋儔僗
@param pITypeLib ITypeLib僀儞僞乕僼僃乕僗
* @see ReleaseManager
*/
public ITypeLib(ReleaseManager rm, int pITypeLib) {
super(rm, pITypeLib);
}
/**
巜掕偟偨儊儞僶ID偺僪僉儏儊儞僩傪曉偟傑偡丅
-1傪巜掕偟偨応崌偼偙偺僆僽僕僃僋僩偵懳偡傞僪僉儏儊儞僩傪曉偟傑偡丅
栠傝抣[0] bstrName,
栠傝抣[1] btrDocString,
栠傝抣[2] dwHelpContext,
栠傝抣[3] bstrHelpFile,
*/
public String[] getDocumentation(int index) throws JComException {
return _getDocumentation(index);
}
public int getTypeInfoCount() throws JComException {
return _getTypeInfoCount();
}
public ITypeInfo getTypeInfo(int index) throws JComException {
return new ITypeInfo(rm, _getTypeInfo(index));
}
public TLibAttr getTLibAttr() throws JComException {
return _getTLibAttr();
}
/**
ITypeLIb偺懏惈傪娗棟偡傞僋儔僗偱偡丅
LIBID丄僶乕僕儑儞忣曬傪採嫙偟傑偡丅
曄悢偼捠忢偼掕悢偱丄僾儘僷僥傿偲偼堎側傝傑偡丅
僾儘僷僥傿偺愝掕丄庢摼偼娭悢偵娷傑傟傑偡丅
@see ITypeLib
*/
public class TLibAttr {
private GUID LIBID;
private int verMajor;
private int verMinor;
public TLibAttr(GUID LIBID, int verMajor, int verMinor) {
this.LIBID = LIBID;
this.verMajor = verMajor;
this.verMinor = verMinor;
}
public GUID getLIBID() { return LIBID; }
public int getVerMajor() { return verMajor; }
public int getVerMinor() { return verMinor; }
public String toString() { return LIBID.toString()+verMajor+"."+verMinor; }
public boolean equals(Object obj) {
if(! (obj instanceof TLibAttr)) return false;
TLibAttr attr = (TLibAttr)obj;
if(! attr.getLIBID().equals(LIBID)) return false;
if(attr.getVerMajor() != verMajor) return false;
if(attr.getVerMinor() != verMinor) return false;
return true;
}
}
// 惷揑儊儞僶
/**
僞僀僾儔僀僽儔儕偐傜ITypeLib傪庢摼偟傑偡丅
偳偺僼傽僀儖傪撉傔偽偄偄傫偩丠
摦嶌枹妋擣
*/
public static ITypeLib loadTypeLib(ReleaseManager rm, String szFile) throws JComException {
int pITypeLib = _loadTypeLibEx(szFile);
if(pITypeLib == 0) return null;
return new ITypeLib(rm, pITypeLib);
}
/**
GUID宍幃偺LIBID偲僶乕僕儑儞斣崋偐傜ITypeLib傪庢摼偟傑偡丅
*/
public static ITypeLib loadRegTypeLib(ReleaseManager rm, GUID libid, int verMajor, int verMinor) throws JComException {
int pITypeLib = _loadRegTypeLib(libid, verMajor, verMinor);
if(pITypeLib == 0) return null;
return new ITypeLib(rm, pITypeLib);
}
// release()偼super偺偱俷俲丏
// JNI
private native String[] _getDocumentation(int index) throws JComException;
private native int _getTypeInfo(int index) throws JComException;
private native int _getTypeInfoCount() throws JComException;
private native TLibAttr _getTLibAttr() throws JComException;
private static native int _loadTypeLibEx(String szFile) throws JComException;
private static native int _loadRegTypeLib(GUID guid, int verMajor, int verMinor) throws JComException;
// jcom.dll傪撉傒崬傒傑偡丅
static {
System.loadLibrary("jcom");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -