タイプ ライブラリ属性

次のキーワードは、IDL ファイル内のライブラリ ステートメントのコンテキスト内でタイプ ライブラリ 情報を指定します。

属性 使用
aggregatable コクラスを、別のオブジェクトのインターフェイス ポインターを直接公開できるサポート オブジェクトとして定義します。
appobject 完全な EXE アプリケーションに関連付けられているアプリケーション オブジェクトとして コクラス を識別します。
bindable プロパティがデータ バインディングをサポートすることを示します。 これにより、プロパティが値を変更するたびにクライアントに通知を受け取ることができます。
coclass コンポーネント オブジェクトでサポートされているインターフェイスの一覧を提供します。
コントロール コクラスまたはライブラリを COM コントロールとして識別します。このコントロールからコンテナー サイトは、追加のタイプ ライブラリまたはコンポーネント オブジェクト クラスを派生させます。
カスタム カスタム属性 (MIDL で定義されていない属性) を定義します。
既定 コクラス内で定義されているインターフェイスまたは dispinterface が既定のインターフェイスを表していることを示します。
defaultbind オブジェクトを最もよく表す 1 つのバインド可能なプロパティを示します。
defaultcollelem プロパティに、既定のコレクションの要素のアクセサー関数としてフラグを設定します。 Microsoft Visual Basic コードの最適化に使用されます。
defaultvalue 型指定された省略可能なパラメーターの既定値を指定できます。
defaultvtable オブジェクトに 2 つの異なるソース インターフェイスを設定できるようにします。
ディスパッチ IDispatch::Invoke を呼び出すことができるプロパティとメソッドのセットを定義します。
displaybind ユーザーにバインド可能として表示する必要があるプロパティを示します。
dllname(str) モジュールのエントリ ポイントを含む DLL の名前を定義します。
デュアル IDispatch を介して、および Vtable を介して直接プロパティとメソッドを公開するインターフェイスを識別します。
entry DLL のエントリ ポイントを識別して、モジュール内のエクスポートされた関数または定数を指定します。
helpcontext ユーザーがヘルプ ファイルでこの要素に関する情報を表示できるようにするコンテキスト識別子を指定します。
helpfile タイプ ライブラリのヘルプ ファイルの名前を設定します。
helpstring 適用先となる要素を記述するために使用される文字列を指定します。
typelib ドキュメント文字列の検索を実行するために使用する DLL の名前を設定します。
hidden 項目は存在するが、ユーザー指向ブラウザーでは表示されないことを示します。
id メンバー関数 (インターフェイスまたはディスパッチ インターフェイス内のプロパティまたはメソッド) の DISPID を指定します。
immediatebind データ バインディング オブジェクトのプロパティに対するすべての変更が、すぐにデータベースに通知されることを示します。
Lcid library ステートメントに localeID 引数と共に適用すると、タイプ ライブラリまたは関数引数のロケールが識別され、ライブラリ ブロック内で国際文字を使用できます。 ライブラリ ステートメント内では、lcid 属性が使用されるポイントから、MIDL は指定されたロケールに従ってローカライズされた入力を受け入れます。
ライブラリ ステートメント内で参照されるインターフェイスとクラスのタイプ ライブラリ情報を生成するように MIDL コンパイラに指示します。
ライセンス 適用先の コクラス がライセンス付与され、 インスタンスを IClassFactory2 を使用して作成する必要があることを示します。
nonbrowsable プロパティがオブジェクト ブラウザーに表示され (プロパティ値は表示されません)、プロパティ ブラウザーには表示されないことを示します (プロパティ値は表示されません)。
noncreatable クライアントが既定のクラス ファクトリを使用してオブジェクト インターフェイスのインスタンスを作成できないようにします。
nonextensible IDispatch 実装に、インターフェイスの説明に記載されているプロパティとメソッドのみが含まれており、実行時に追加のメンバーで拡張できないことを指定します。
oleautomation インターフェイスがオートメーションと互換性があることを示します。
省略可能 メンバー関数の省略可能なパラメーターを指定します。
propget プロパティ アクセサー関数を指定します。
propput プロパティ設定関数を指定します。
propputref 値ではなく参照を使用するプロパティ設定関数を指定します。
公共 typedef で宣言されたエイリアスがタイプ ライブラリの一部になるようにします。
Readonly 変数に新しい値を割り当てることを禁止します。
requestedit プロパティが OnRequestEdit 通知をサポートしていることを示します。
restricted ライブラリ、またはモジュール、インターフェイス、ディスパッチ インターフェイスのメンバーを任意に呼び出すことができないことを指定します。
retval メンバーの戻り値を受け取るパラメーターを指定します。
ソース コクラス、プロパティ、またはメソッドのメンバーがイベントのソースであることを示します。
文字列 1 次元 charwchar_tバイト (または等価) 配列、またはこのような配列へのポインターを文字列として扱う必要があることを示します。
uidefault ユーザー インターフェイスに表示される既定のメンバーとして、型情報メンバーを指定します。
usesgetlasterror モジュール エントリ ポイントが SetLastError を使用してエラー コードを返し、関数の入力時にエラーが発生した場合に呼び出し元が GetLastError を呼び出してエラー コードを取得できることを指定します。
uuid タイプ ライブラリ、 コクラス、またはインターフェイスの一意識別子を指定します。
vararg 関数が異なる数の引数をとることを指定します。
バージョン タイプ ライブラリの特定のバージョンを識別します。

 

ODL ファイルの構文

ODL ファイルの例

MIDL を使用したタイプ ライブラリの生成