Win32 API 日本語リファレンス
ホーム › System.AddressBook › LPWABOPENEX

LPWABOPENEX

コールバック

シグネチャ

HRESULT LPWABOPENEX(
    IAddrBook** lppAdrBook,
    IWABObject** lppWABObject,
    WAB_PARAM* lpWP,
    DWORD Reserved,
    LPALLOCATEBUFFER fnAllocateBuffer,
    LPALLOCATEMORE fnAllocateMore,
    LPFREEBUFFER fnFreeBuffer
);

パラメーター

フィールド型説明
lppAdrBookIAddrBook**この関数が返す IAddrBook インターフェイスへのポインターのアドレスです。
lppWABObjectIWABObject**この関数が返す IWABObject インターフェイスへのポインターのアドレスです。
lpWPWAB_PARAM*
ReservedDWORD
fnAllocateBufferLPALLOCATEBUFFER
fnAllocateMoreLPALLOCATEMORE
fnFreeBufferLPFREEBUFFER

- Reserved2

型: DWORD

予約されています。0 を設定する必要があります。

- lpWABParam

型: LPWAB_PARAM

WAB_PARAM 構造体へのポインターです。Internet Explorer 4.0 以降でサポートされます。

- lpfnAllocateBuffer

型: ALLOCATEBUFFER*

MAPIAllocateBuffer 形式のメモリ割り当て関数を指定する関数へのポインターです。WAB の内部ルーチンを使用するには NULL を設定します。

- lpfnAllocateMore

型: ALLOCATEMORE*

MAPIAllocateMore 形式のメモリ割り当て関数を指定する関数へのポインターです。WAB の内部ルーチンを使用するには NULL を設定します。

- lpfnFreeBuffer

型: FREEBUFFER*

MAPIFreeBuffer 形式のメモリ解放関数を指定する関数へのポインターです。WAB の内部ルーチンを使用するには NULL を設定します。

公式ドキュメント

[WABOpenEx は、Windows Vista 以降では使用できません。]

複数のオブジェクトインターフェイスを通じて、Windows アドレス帳 (WAB) へのアクセスを提供します。ルートインターフェイスは IAddrBook で、これは IAddrBook の MAPI 実装のサブセットです。

戻り値

型: HRESULT

このコールバック関数が成功した場合は、S_OK を返します。それ以外の場合は、HRESULT エラーコードを返します。

解説(Remarks)

この関数は WABOpen 関数を呼び出します。追加のパラメーターである lpfnAllocateBuffer、lpfnAllocateMore、lpfnFreeBuffer は無視されます。

WABOpenEx は WABOpen の拡張版であり、WAB がクライアントにバッファーを返す際に使用するメモリ割り当て関数を開発者が指定できるようにします。割り当てルーチンを 1 つでも渡す場合は、MAPIAllocateBuffer、MAPIAllocateMore、MAPIFreeBuffer の 3 つすべてのルーチンを渡す必要があります。

WABOpenEx の追加のメモリ割り当て機能が不要な場合は、代わりに WABOpen を使用してください。

メモ WABOpenEx でメモリ割り当てルーチンを指定すると、これらのルーチンはこのプロセスにおける WAB の内部ルーチンをグローバルに置き換えます。 他のスレッドが WABOpen を呼び出すことは引き続き可能ですが、メモリは以前に WABOpenEx に渡されたルーチンで割り当てられます。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)