etc.negui.com.com
COM。
etc.negui.readme参照。
History:
1.010
source
packageをNeGuiに移動。
1.00β13
新規作成。
class
ComException
: etc.negui.system.exception.NeGuiException;
History:
1.020
source
継承元変更。
void
ComInitialize
();
void
ComUnInitialize
();
enum
COM_CONTEXT
;
INPROC_SERVER
このクラスのオブジェクトを作成および管理するコードは、呼び出し側と同じプロセスで実行されるDLLです。
INPROC_HANDLER
このクラスのオブジェクトを管理するコードはプロセス内ハンドラです。これはクライアントプロセス内で実行されるDLLで、クラスのインスタンスがリモートでアクセスされる際にこのクラスのクライアントサイド構造を作成します。
LOCAL_SERVER
このクラスのオブジェクトを作成および管理するEXEコードは同じマシン上で実行されますが、別のプロセス空間にロードされます。
ALL
上記の3つのフラグをすべて含んでいます。
abstract class
ComBase
: etc.negui.system.raii.Raii;
Note:
なんでComとComBaseに分けてるのか忘れた。 キチンとした意味があったはず。
protected this(bool
Suicide
);
abstract size_t
addRef
();
abstract size_t
release
();
abstract IUnknown
iUnKnow
();
class
Com
(TKNOWN : IUnknown): ComBase;
ラッパー。
これでうまく行くのか非常に心配。
TKNOWN
Known
;
__ctor
;
__ctor
;
History:
1.100
program
CoCreateInstance失敗時に例外。
size_t
addRef
();
size_t
release
();
template
query
(T : IUnknown)
Com!(T)
query
(ref const GUID
GuID
);
IUnknown
iUnKnow
();
TKNOWN
opDot
();