次の方法で共有


IWMDMNotification::WMDMMessage メソッド (mswmdm.h)

WMDMMessage メソッドは、クライアントによって実装され、プラグ アンド プレイ準拠デバイスまたはストレージ メディアが接続または削除されたときに Windows Media デバイス マネージャーによって呼び出されるコールバック メソッドです。

構文

HRESULT WMDMMessage(
  [in] DWORD   dwMessageType,
  [in] LPCWSTR pwszCanonicalName
);

パラメーター

[in] dwMessageType

メッセージの種類を指定する DWORD

イベントの種類に使用できる値は次のとおりです。

メッセージの種類 説明
WMDM_MSG_DEVICE_ARRIVAL デバイスが接続されています。
WMDM_MSG_DEVICE_REMOVAL デバイスが削除されました。
WMDM_MSG_MEDIA_ARRIVAL 接続されたデバイスに記憶域メディアが挿入されました。
WMDM_MSG_MEDIA_REMOVAL 接続されているデバイスから記憶域メディアが削除されました。

[in] pwszCanonicalName

このイベントが生成されるデバイスの正規名を指定する、ワイド文字の null で終わる文字列へのポインター。 アプリケーションはこの値を解放しません。

戻り値

戻り値は、アプリケーションがメッセージの処理の結果を返すことができる HRESULT です。 戻り値は WMDM によって無視されます。

注釈

このメソッドを使用してアプリケーションが通知を受信するようにサブスクライブする方法については、「 通知を有効にする」を参照してください。

次の C++ コードは 、WMDMMessage メソッドを実装し、デバイスまたはストレージの到着または出発通知メッセージを出力します。


HRESULT WMDMMessage(DWORD  dwMessageType, LPCWSTR  pwszCanonicalName)
{
    switch(dwMessageType)
    {
    case WMDM_MSG_DEVICE_ARRIVAL:
        // TODO: Display a message indicating that a new device has been detected and display the device name.
        break;
    case WMDM_MSG_DEVICE_REMOVAL:
        // TODO: Display a message that the device has been removed and display the device name.
        break;
    case WMDM_MSG_MEDIA_ARRIVAL:
        // TODO: Display a message indicating that storage media has been added to the device and display the device name.
        break;
    case WMDM_MSG_MEDIA_REMOVAL:
        // TODO: Display a message that storage media has been removed from the device and display the device name.
        break;
    default:
        // TODO: Display a message indicating that an unidentified message has been received.
        break;
    }
    return S_OK; // Return value is ignored, and not returned to the application.
}

要件

要件
対象プラットフォーム Windows
ヘッダー mswmdm.h
Library Mssachlp.lib

こちらもご覧ください

通知の有効化

IWMDMNotification インターフェイス