Интерфейс IPortableDevice (portabledeviceapi.h)
Интерфейс IPortableDevice предоставляет доступ к переносимому устройству.
Чтобы создать и открыть этот интерфейс, сначала вызовите CoCreateInstance с CLSID_PortableDeviceFTM или CLSID_PortableDevice , чтобы получить интерфейс IPortableDevice , а затем вызовите Open , чтобы открыть подключение к устройству.
Наследование
Интерфейс IPortableDevice наследуется от интерфейса IUnknown . IPortableDevice также имеет следующие типы членов:
Методы
Интерфейс IPortableDevice содержит следующие методы.
IPortableDevice::Совет Метод Advise регистрирует определяемый приложением обратный вызов, который получает события устройства. |
IPortableDevice::Cancel Метод Cancel отменяет ожидающие операции в этом интерфейсе. |
IPortableDevice::Capabilities Метод Capabilities извлекает интерфейс, используемый для запроса возможностей переносимого устройства. |
IPortableDevice::Close Метод Close закрывает подключение к устройству. |
IPortableDevice::Content Метод Content извлекает интерфейс, который можно использовать для доступа к объектам на устройстве. |
IPortableDevice::GetPnPDeviceID Метод GetPnPDeviceID извлекает идентификатор устройства Plug and Play (PnP), который приложение использовало для открытия устройства. |
IPortableDevice::Open Метод Open открывает подключение между приложением и устройством. |
IPortableDevice::SendCommand Метод SendCommand отправляет команду на устройство и извлекает результаты синхронно. |
IPortableDevice::Unadvise Метод Unadvise отменяет регистрацию клиента от получения уведомлений обратного вызова. Этот метод необходимо вызвать, если вы ранее вызывали Совет. |
Комментарии
Клиентские интерфейсы предназначены для использования для любого объекта WPD; Нет необходимости создавать новый экземпляр для каждого объекта, на который ссылается приложение. После того как приложение откроет экземпляр интерфейса IPortableDevice , оно должно открыть и кэшировать все другие клиентские интерфейсы WPD, которые ему потребуются.
В Windows 7 IPortableDevice поддерживает два идентификатора CLSID для CoCreateInstance. CLSID_PortableDevice возвращает указатель IPortableDevice , который не агрегирует маршалер со свободным потоком; CLSID_PortableDeviceFTM — это новый идентификатор CLSID, возвращающий указатель IPortableDevice , который агрегирует маршалер со свободным потоком. В противном случае оба указателя поддерживают одну и ту же функциональность.
Приложения, которые находятся в однопотоковых квартирах, должны использовать CLSID_PortableDeviceFTM , так как это позволяет избежать дополнительных затрат на маршалинг указателей интерфейса. CLSID_PortableDevice по-прежнему поддерживается для устаревших приложений.
Требования
Целевая платформа | Windows |
Header | portabledeviceapi.h |