⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 itypelib.java

📁 使用JCom的时候
💻 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 + -