jp.ne.so_net.ga2.no_ji.jcom
クラス IUnknown

java.lang.Object
  |
  +--jp.ne.so_net.ga2.no_ji.jcom.IUnknown
直系の既知のサブクラス:
IDispatch, IEnumVARIANT, ITypeInfo, ITypeLib

public class IUnknown
extends java.lang.Object

IUnknownインターフェースを扱うためのクラス

関連項目:
IDispatch, JComException, ReleaseManager

フィールドの概要
static GUID IID
          IID_IUnknown です。
protected  int pIUnknown
          IUnknownインターフェースのポインタを保持します。
protected  ReleaseManager rm
          参照カウンタ管理クラス
 
コンストラクタの概要
IUnknown(ReleaseManager rm)
          空のIUnknownを作成します。
IUnknown(ReleaseManager rm, int pIUnknown)
          IUnknownを作成します。
 
メソッドの概要
 int addRef()
          参照カウンタを1つあげ、現在のカウンタ値を返します。
 ReleaseManager getReleaseManager()
          ReleaseManagerを返します。
 IUnknown queryInterface(java.lang.String classname, GUID IID)
          QueryInterfaceを実行し、指定したインターフェースを取得します。
 boolean release()
          COMオブジェクトを解放します。
 java.lang.String toString()
          内部で保持しているIUnknownクラス、またはそれから継承したクラスの オブジェクトを以下の形で表示します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

IID

public static GUID IID
IID_IUnknown です。
関連項目:
GUID

pIUnknown

protected int pIUnknown
IUnknownインターフェースのポインタを保持します。 変更しないでください。

rm

protected ReleaseManager rm
参照カウンタ管理クラス
コンストラクタの詳細

IUnknown

public IUnknown(ReleaseManager rm)
空のIUnknownを作成します。 COMは割り当てられていないので注意
パラメータ:
rm - 参照カウンタ管理クラス
関連項目:
ReleaseManager

IUnknown

public IUnknown(ReleaseManager rm,
                int pIUnknown)
IUnknownを作成します。 引数で指定されたIUnknownポインタのCOMを作成します。 通常、別のCOMのメソッドから返されたIUnknownポインタに対して、 使用します。
パラメータ:
rm - 参照カウンタ管理クラス
IUnknown - IUnknownインターフェースのアドレス
関連項目:
ReleaseManager
メソッドの詳細

queryInterface

public IUnknown queryInterface(java.lang.String classname,
                               GUID IID)
                        throws JComException
QueryInterfaceを実行し、指定したインターフェースを取得します。 IID と Java側のクラス名を指定して下さい。
  IUnknown iUnknown = (IUnknown)worksheets.get("_NewEnum");
  IEnumVARIANT a = (IEnumVARIANT)iUnknown.queryInterface(
                      "jp.ne.so_net.ga2.no_ji.jcom.IEnumVARIANT",
                      GUID.IID_IEnumVARIANT);
  
パラメータ:
classname - Java側のクラス名
IID - インターフェースID
関連項目:
GUID

release

public boolean release()
COMオブジェクトを解放します。 ReleaseManagerを使えば、明示的に呼ぶ必要はありません。 すでに解放されていた場合、falseを返します。

addRef

public int addRef()
参照カウンタを1つあげ、現在のカウンタ値を返します。 通常呼ぶ必要はありません。 参照カウンタを見たい場合でのみ使用します。 その場合はrelease()を呼んで、カウンタを下げて下さい。
関連項目:
release()

toString

public java.lang.String toString()
内部で保持しているIUnknownクラス、またはそれから継承したクラスの オブジェクトを以下の形で表示します。
476eb8(1)jp.ne.so_net.ga2.no_ji.jcom.IDispatch
16進数はインターフェースのポインタ、 括弧の中の数値は参照カウンタの数、その次はクラス名です。
オーバーライド:
クラス java.lang.Object 内の toString

getReleaseManager

public ReleaseManager getReleaseManager()
ReleaseManagerを返します。 以下の形で、現在の参照カウンタ管理クラスを見ることができます。
System.out.println(excel.getReleaseManager().toString());
関連項目:
release()