PONLINE_ROUTINEコールバック関数 (resapi.h)

リソースを使用可能としてマークします。 PONLINE_ROUTINE型は、この関数へのポインターを定義します。

構文

PONLINE_ROUTINE PonlineRoutine;

DWORD PonlineRoutine(
  [in]      RESID Resource,
  [in, out] LPHANDLE EventHandle
)
{...}

パラメーター

[in] Resource

使用可能にするリソースのリソース識別子。

[in, out] EventHandle

入力時、 EventHandle は NULL です。 出力時に、 EventHandle には、非割り当て 同期オブジェクトへのハンドルが含まれます。 リソース DLL は、リソース モニターにリソースエラーを報告するために、このハンドルをいつでも通知できます。 EventHandle は、リソースが非同期イベント通知をサポートしていないことを示す、出力時に NULL に設定することもできます。

戻り値

リターン コード/値 Description
ERROR_SUCCESS
0
操作が成功し、リソースが オンラインになりました。
ERROR_RESOURCE_NOT_AVAILABLE
5006 (0x138E)
リソースは他のいくつかのシステムで仲裁され、他のシステムの1つが仲裁を勝ち取った。 クォーラム対応リソースのみがこの値を返します。
ERROR_IO_PENDING
997 (0x3E5)
要求が保留中であり、オンライン要求を処理するためにスレッドがアクティブ化されています。
 

他の理由で操作が成功しなかった場合、 Online は システム エラー コードの 1 つを返す必要があります。

注釈

オンライン エントリ ポイント関数がERROR_IO_PENDING以外のエラー コードを返す場合、リソース モニターはイベントをログに記録し、Terminate を呼び出します。

有効な EventHandle を返すことにより、次の利点が得られます。

  • リソース モニターは 、LooksAlive ポーリングを 実行しません。 このオーバーヘッドを回避することは、多くの場合、特に DLL で複数のリソース インスタンスがサポートされている場合に役立ちます。
  • ハンドルに通知することで、いつでもリソースエラーを報告できます。 リソース モニターは、リソースが失敗したことを確認するために IsAlive を直ちに呼び出します。
オンライン エントリ ポイント関数の効果的な実装戦略については、「オンラインの実装」を参照してください。

例

「リソース DLL の例」を参照してください。

要件

要件 値
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2008 Enterprise、Windows Server 2008 Datacenter
対象プラットフォーム Windows
ヘッダー resapi.h

こちらもご覧ください

NetShareAdd

リソース DLL Entry-Point 関数