Поделиться через


Метод IWMDMNotification::WMDMMessage (mswmdm.h)

Метод WMDMMessage — это метод обратного вызова, реализованный клиентом и вызываемый Windows Media диспетчер устройств при подключении или удалении Plug and Play совместимого устройства или носителя хранилища.

Синтаксис

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
Header mswmdm.h
Библиотека Mssachlp.lib

См. также раздел

Включение уведомлений

Интерфейс IWMDMNotification