PnpObjectWatcher Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Важно!
Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp.
Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher.
Вызывает события для уведомления клиента о добавлении, обновлении или удалении объекта PnpObject из перечисленной коллекции объектов устройств Pnp добавочным и асинхронным способом.
public ref class PnpObjectWatcher sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class PnpObjectWatcher final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class PnpObjectWatcher
Public NotInheritable Class PnpObjectWatcher
- Наследование
- Атрибуты
Требования к Windows
Семейство устройств |
Windows 10 (появилось в 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v1.0)
|
Комментарии
Приложение вызывает start , чтобы начать поиск устройств. Во время этого начального перечисления PnpObjectWatcher создает событие Added для каждого найденного устройства, пока не будут найдены все устройства. PnpObjectWatcher вызывает событие EnumerationCompleted после завершения начального перечисления и продолжает вызывать события при добавлении, обновлении или удалении устройства.
На следующей схеме показано, как PnpObjectWatcher переходит между состояниями, представленными перечислением DeviceWatcherStatus .
Метод Start можно вызывать только в том случае, если PnpObjectWatcher находится в состоянии Created, Stopped или Aborted . Свойство Status указывает состояние PnpObjectWatcher. При повторном запуске наблюдателя дождитесь события Stopped перед вызовом Start.
Вызов Stop переводит PnpObjectWatcher в состояние Stop и завершается немедленно. Наблюдатель перейдет в состояние Остановлено после завершения всех событий, которые уже находятся в процессе создания.
После вызова Stop приложения могут ждать события Stopped , если им нужно знать, когда PnpObjectWatcher остановлен. Вызывающие стороны должны дождаться события Stopped, прежде чем они смогут вызвать Start для перезапуска наблюдателя. Вызывающие абоненты могут отменить подписку на события, если они не хотят получать какие-либо дополнительные события после остановки , но не хотят ждать события Stopped .
Свойства
Status |
Важно! Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp. Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher. Состояние, связанное с асинхронной операцией. |
Методы
Start() |
Важно! Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp. Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher. Начинает создавать события для информирования клиента о добавлении, обновлении или удалении объекта PnpObject . |
Stop() |
Важно! Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp. Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher. Прекращает создавать события, чтобы сообщить клиенту о добавлении, обновлении или удалении объекта PnpObject . |
События
Added |
Важно! Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp. Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher. Происходит при добавлении объекта PnpObject в коллекцию, перечисленную PnpObjectWatcher. |
EnumerationCompleted |
Важно! Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp. Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher. Происходит после завершения перечисления объектов устройств Pnp. |
Removed |
Важно! Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp. Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher. Происходит при удалении объекта PnpObject из коллекции, перечисленной PnpObjectWatcher. |
Stopped |
Важно! Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp. Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher. Происходит, когда PnpObjectWatcher остановил мониторинг изменений коллекции объектов устройств Pnp. |
Updated |
Важно! Больше не рекомендуется использовать типы в пространстве имен Windows.Devices.Enumeration.Pnp . Вместо этого типы в пространстве имен Windows.Devices.Enumeration реализуют современный и лучше поддерживаемый надмножество функций Windows.Devices.Enumeration.Pnp. Альтернативой PnpObjectType является перечисление Windows.Devices.Enumeration.DeviceInformationKind , которое можно передать в качестве параметра в API Windows.Devices.Enumeration . Например, вместо использования PnpObjectType при создании PnpObjectWatcher используйте DeviceInformationKind при создании DeviceWatcher. Происходит при обновлении свойств объекта PnpObject в коллекции, перечисляемой PnpObjectWatcher . |