共用方式為


IWMDMNotification::WMDMMessage 方法 (mswmdm.h)

WMDMMessage 方法是用戶端所實作的回呼方法,當聯機或移除符合 隨插即用 規範的裝置或儲存媒體時,Windows Media 會 裝置管理員 呼叫。

語法

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

參數

[in] dwMessageType

指定訊息類型的 DWORD

事件類型的可能值如下:

訊息類型 Description
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
程式庫 Mssachlp.lib

另請參閱

啟用通知

IWMDMNotification 介面