次の方法で共有


CM_WaitNoPendingInstallEvents関数 (cfgmgr32.h)

CMP_WaitNoPendingInstallEvents (CM_WaitNoPendingInstallEvents) 関数は、PnP マネージャーが実行するための保留中のデバイス インストール アクティビティが存在しないまで待機します。

構文

DWORD CM_WaitNoPendingInstallEvents(
  [in] DWORD dwTimeout
);

パラメーター

[in] dwTimeout

タイムアウト間隔をミリ秒単位で指定します。

  • dwTimeout が 0 に設定されている場合、この関数は保留中のインストール イベントがあるかどうかをテストし、直ちに を返します。
  • dwTimeout が INFINITE (Winbase.h で定義) に設定されている場合、関数のタイムアウト間隔は経過しません。
  • その他のすべての dwTimeout 値に対して、保留中のインストール イベントが引き続き存在する場合でも、指定した間隔が経過すると、関数は を返します。

戻り値

この関数は、次のいずれかの値を返します ( Winbase.h で定義されています)。

リターン コード 説明
WAIT_OBJECT_0
保留中のインストール アクティビティはありません。
WAIT_TIMEOUT
タイムアウト間隔が経過しても、インストール アクティビティは保留中です。
WAIT_FAILED
関数が失敗しました。 追加のエラー情報については 、GetLastError を呼び出します。

注釈

この関数は、PnP マネージャーがインストール アクティビティが保留中でないと判断したときに設定する内部イベント オブジェクトを待機します。

0 以外のタイムアウト値が指定されている場合、 CMP_WaitNoPendingInstallEvents は、インストール イベントが保留中でない場合、またはタイムアウト期間が経過した場合のどちらか早い方を返します。

新しいインストール イベントは、いつでも発生できます。 この関数は、呼び出された時点で保留中のインストール アクティビティがないことを示すだけです。

この関数は、通常、 デバイスのインストール アプリケーションで使用されます。 詳細については、「 デバイス インストール アプリケーションの作成」を参照してください。

短時間で返されることが予想されるシステムによって開始されるコールバック関数内のイベントの処理中に、この関数を呼び出さないでください。 これには、サービスの起動 ( ServiceMain コールバック関数など) や、サービス ハンドラー ( ハンドラー コールバック関数など) 内のコントロールの処理中、またはクラス インストーラーや共同インストーラーなどのインストール コンポーネントからの制御が含まれます。

Windows XP の場合 (Service Pack がインストールされていない場合)、この関数は管理者特権で セッション 0 から呼び出す必要があります。 Service Pack 1 (SP1) 以降のバージョンの Windows XP の場合、この関数は任意のセッションから呼び出すことができます。管理者特権は必要ありません。

要件

要件
サポートされている最小のクライアント Windows XP 以降のバージョンの Windows で使用できます。
対象プラットフォーム デスクトップ
Header cfgmgr32.h (Cfgmgr32.h を含む)
Library Cfgmgr32.lib
[DLL] Cfgmgr32.dll

こちらもご覧ください

CM_WaitNoPendingInstallEvents

デバイス インストール アプリケーションが進行中のデバイスのインストールを確認する方法