COM Interfaceは、呼び出す側と呼ばれる側の2つの側面で取り扱う。便宜上、一方をinvoker、もう一方をdelegaterと呼称する。呼び出す側はinvoker。呼ばれる側の場合は自身がCOM Interfaceを実装していることを知らせるIUnknownを提供する立場(CoClass相当クラスの実装者)の場合はdelegaterとして取り扱う。 eclipseの実装流儀があるので以下にまとめる。 delegaterはCOMObjectクラスというものを扱う。COMObjectクラスではmethod0〜method79というメソッドが設けられていて、メソッド分のメソッドアドレステーブルを作り並びの位置ごとにCallbackのインスタンスを作成してOSネイティブのメソッドアドレスをマッピングしている。これでCOMの仕様に沿ったものができるのでこのテーブルへのポインタを、他言語のI