次の方法で共有


idl_module

.dll ファイル内のエントリ ポイントを指定します。

構文

[ idl_module (name=module_name, dllname=dll, uuid="uuid", helpstring="help text", helpstringcontext=helpcontextID, helpcontext=helpcontext, hidden, restricted) ]
function_declaration

パラメーター

name
.Idl ファイルに表示されるコード ブロックのユーザー定義名。

dllname
(省略可能) エクスポートを含む .dll ファイル。

uuid
(省略可能) 一意の ID。

helpstring
(省略可能) タイプ ライブラリの説明に使用する文字列。

helpstringcontext
(省略可能) .hlp または .chm ファイル内のヘルプ トピックの ID。

helpcontext
(省略可能) このタイプ ライブラリのヘルプ ID です。

hidden
(省略可能) ライブラリが表示されないようにするパラメーター。 詳細については、hidden MIDL 属性を参照してください。

restricted
(省略可能) ライブラリのメンバーは、任意に呼び出すことはできません。 詳細については、restricted MIDL 属性を参照してください。

function_declaration
定義する関数。

解説

idl_module C++ 属性を使用すると、.dll ファイルのエントリ ポイントを指定できます。これにより、.dll ファイルからインポートできるようになります。

idl_module 属性には、module MIDL 属性と同様の機能があります。

.idl ファイルのライブラリ ブロックに DLL エントリ ポイントを配置することで、.dll ファイルからエクスポートできる COM オブジェクトから任意のものをエクスポートできます。

2 つの手順で idl_module を使用します。 まず、名前と DLL のペアを定義します。 次に、idl_module を使用してエントリ ポイントを指定するときに、名前と追加の属性を指定します。

idl_module 属性の使用方法を次のコードに示します。

// cpp_attr_ref_idl_module.cpp
// compile with: /LD
[idl_quote("midl_pragma warning(disable:2461)")];
[module(name="MyLibrary"), idl_module(name="MyLib", dllname="xxx.dll")];
[idl_module(name="MyLib"), entry(4), usesgetlasterror]
void FuncName(int i);

必要条件

属性コンテキスト Value
適用対象 Anywhere
反復可能 いいえ
必要な属性 なし
無効な属性 なし

詳細については、「 属性コンテキスト」を参照してください。

関連項目

IDL 属性
スタンドアロン属性
entry