NdisAllocateTimerObject 関数 (ndis.h)

NdisAllocateTimerObject 関数は、後続の NdisXxx タイマー関数で使用するタイマー オブジェクトを割り当てて初期化します。

構文

NDIS_STATUS NdisAllocateTimerObject(
  [in]  NDIS_HANDLE                 NdisHandle,
  [in]  PNDIS_TIMER_CHARACTERISTICS TimerCharacteristics,
  [out] PNDIS_HANDLE                pTimerObject
);

パラメーター

[in] NdisHandle

呼び出し元の初期化中に取得された NDIS ハンドル。 NDIS ハンドルの取得の詳細については、「プール ハンドル の取得」を参照してください。

[in] TimerCharacteristics

呼び出し元が指定したへのポインター NDIS_TIMER_CHARACTERISTICS 割り当てられたタイマー オブジェクトの特性を指定する構造体です。

[out] pTimerObject

NDIS Xxx タイマー関数の後続の呼び出しでタイマー オブジェクトを識別するために NDIS が提供する NDIS タイマー オブジェクト ハンドルへのポインター。

戻り値

NdisAllocateTimerObject は、次のいずれかの状態値を返します。

リターン コード 説明
NDIS_STATUS_SUCCESS
タイマー オブジェクトが正常に割り当てられました。
NDIS_STATUS_RESOURCES
リソースが不足しているため、割り当てに失敗しました。
NDIS_STATUS_BAD_CHARACTERISTICS
NDIS_TIMER_CHARACTERISTICS構造体の情報が無効であるため、割り当てに失敗しました。
NDIS_STATUS_FAILURE
上記の状態値は適用されません。

注釈

タイマー サービスを使用するために、NDIS ドライバーはまず NdisAllocateTimerObject 関数を呼び出してタイマー オブジェクトを初期化します。 通常、 NdisAllocateTimerObject はドライバーの初期化中に呼び出されます。

タイマーを開始するには、 NdisSetTimerObject 関数を呼び出します。 NdisSetTimerObject を呼び出して、タイマー オブジェクトをシステム タイマー キューに挿入します。 特定のタイマー オブジェクトのインスタンスは、任意の時点で 1 つだけキューに入れられます。

タイマーを取り消すには、 NdisCancelTimerObject 関数を呼び出します。 NdisCancelTimerObject は、タイマー オブジェクトが現在キューに入っている場合にデキューします。

タイマー オブジェクトを解放するには、 NdisFreeTimerObject 関数を呼び出す必要があります。

要件

要件
サポートされている最小のクライアント NDIS 6.0 以降でサポートされています。
対象プラットフォーム ユニバーサル
Header ndis.h (Ndis.h を含む)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 Irql_Timer_Function(ndis)

こちらもご覧ください

NDIS_TIMER_CHARACTERISTICS

NdisCancelTimerObject

NdisFreeTimerObject

NdisSetTimerObject