Метод 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 |