GetNotificationResourceManagerAsync 関数 (ktmw32.h)
リソース・マネージャー (RM) の非同期通知を要求および受信します。 この機能は、トランザクションが状態を変更したときに通知を受け取るために RM レジスタによって使用されます。
構文
BOOL GetNotificationResourceManagerAsync(
[in] HANDLE ResourceManagerHandle,
[out] PTRANSACTION_NOTIFICATION TransactionNotification,
[in] ULONG TransactionNotificationLength,
[out] PULONG ReturnLength,
[in] LPOVERLAPPED lpOverlapped
);
パラメーター
[in] ResourceManagerHandle
リソース マネージャーへのハンドル。
[out] TransactionNotification
使用可能な最初の通知を受け取る TRANSACTION_NOTIFICATION 構造体へのポインター。
[in] TransactionNotificationLength
TransactionNotification バッファーのサイズ (バイト単位)。
[out] ReturnLength
TransactionNotification パラメーターで受信した通知の実際のサイズを受け取る変数へのポインター。
[in] lpOverlapped
非同期操作に必要な OVERLAPPED 構造体へのポインター。
戻り値
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 エラーの詳細情報を得るには、GetLastError 関数を呼び出します。
次の一覧は、考えられるエラー コードを示しています。
解説
すべてのリソース マネージャーは、その後 ReadOnlyEnlistment を呼び出して参加リストを読み取り専用としてマークする場合でも、TRANSACTION_NOTIFY_PREPREPARE、TRANSACTION_NOTIFY_PREPARE、およびTRANSACTION_NOTIFY_COMMIT通知を受信するために登録する必要があります。 リソース マネージャーは TRANSACTION_NOTIFY_SINGLE_PHASE_COMMITをサポートできますが、マルチフェーズの事前準備、準備、コミット通知もサポートする必要があります。 リソース マネージャーが受信できるすべての通知の一覧については、「 TRANSACTION_NOTIFICATION」を参照してください。
リソース マネージャー (RM) は、通知を配信するときに使用する KTM 用の複数のバッファーを提供するために、この関数を複数回呼び出す必要がある場合があります。 この関数の呼び出しの数は、RM が実行している負荷によって異なります。
この関数は、 SetResourceManagerCompletionPort 関数が呼び出された後に呼び出す必要があります。
要件
サポートされている最小のクライアント | Windows Vista |
サポートされている最小のサーバー | Windows Server 2008 |
対象プラットフォーム | Windows |
ヘッダー | ktmw32.h |
Library | KtmW32.lib |
[DLL] | KtmW32.dll |