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


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
Наследование
Object Platform::Object IInspectable PnpObjectWatcher
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Комментарии

Приложение вызывает start , чтобы начать поиск устройств. Во время этого начального перечисления PnpObjectWatcher создает событие Added для каждого найденного устройства, пока не будут найдены все устройства. PnpObjectWatcher вызывает событие EnumerationCompleted после завершения начального перечисления и продолжает вызывать события при добавлении, обновлении или удалении устройства.

На следующей схеме показано, как PnpObjectWatcher переходит между состояниями, представленными перечислением DeviceWatcherStatus .

Схема состояний DeviceWatcher

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

Применяется к