Шпионский сервис в Windows 10 был переименовен и снова запущен у всех пользователей
Пару недель назад компания Microsoft выпустила первое крупное обновление Windows 10. В нём доступно несколько приятных нововведений, о которых рассказывалось на сайте Microsoft и различных ресурсах вроде нашего, но также присутствуют изменения, которые понравятся далеко не всем пользователям.
Во-первых, операционная система по какой-то причине самовольно удаляет ряд сторонних программ, следящих за конфигурацией или настройкой оборудования, вроде CPU-Z, Speccy, 8gadgetpack, клиент Cisco VPN, драйверы SATA, SpyBot, RSAT, F5 VPN, HWMonitor и подобные им. К счастью, эти программы легко восстановить, Windows 10 этому не препятствует.
Во-вторых, Windows 10 меняет некоторые настройки приватности. Когда это выяснилось, апдейт был отозван из широкого доступа и «исправлен» — теперь он не меняет настройки, а для «пострадавших» пользователей в ближайшие дни будет выпущен специальный патч, который вернёт прежние настройки.
В-третьих (и этот «баг» можно назвать наиболее тщательно скрываемым), в Windows 10 был переименован сервис Diagnostics Tracking Service (или «Служба диагностического отслеживания»), отвечающий за слежкой за многими действиями пользователя. Теперь он носит новое название — Connected User Experiences and Telemetry («Функциональные возможности для подключенных пользователей и телеметрия»). Его назначение не поменялось, но если вы ранее отключили его, то после обновления Windows 10 до сборки 10586 он будет работать как ни в чём не бывало.
Отключить Connected User Experiences and Telemetry можно там же, где любой другой сервис Windows 10 — в настройках services.msc (нужно поменять параметры его запуска на «Отключено»).
Как видите, за Windows 10 нужно следить гораздо более внимательно, чем за предыдущими версиями Windows. Эта операционная система по сути облачная, она вышла из-под контроля пользователя и при любом обновлении (от которого к тому же очень сложно отказаться) может поменять любые настройки, даже если вы убили время на их поиски. Вероятно, компания Microsoft считает, что ей лучше известно, что нужно пользователям, даже самым продвинутым, которые не хотят отправлять чувствительную информацию на её серверы.
Подлый трюк. Microsoft переименовала шпионский сервис DiagTrack и снова запустила его у всех пользователей

Но всё-таки несколько ложек дёгтя Microsoft приготовила. Во-первых, операционная система зачем-то автоматически удаляет на отдельных компьютерах некоторые установленные программы. Судя по сообщениям на форумах, среди «пострадавших» — CPU-Z, speccy, 8gadgetpack, клиент Cisco VPN, драйверы SATA, SpyBot, RSAT, F5 VPN, HWMonitor и другие. После обновления Windows программы можно без проблем установить обратно.
Во-вторых, после обновления Windows 10 изменяет некоторые настройки по умолчанию обратно на сервисы Microsoft. Опять же, потом дают возможность вернуть всё обратно.
Два вышеуказанных бага отловили достаточно быстро. Чего не скажешь о третьем, самом грязном и даже немного подлом баге.
Но сначала немного предыстории. Три недели назад представители Microsoft наконец признали, что в операционной системе невозможно стандартными средствами отключить мониторинг активности системы и коммуникацию с серверами Microsoft. Для этого нужно заходить в services.msc и останавливать сервис вручную.
Кстати, это хоть слабый, но аргумент в пользу истца на грядущем открытом судебном процессе против Роскомнадзора, который состоится 7 декабря. Напомним, что Роскомнадзор проверил Windows 10 и пришёл к выводу, что пользователь сам принимает лицензионное соглашение и соглашается на сбор данных (официальный ответ Роскомнадзора). Microsoft же признала, что сбор данных происходит без ведома пользователя. Ключевой сервис диагностики под названием DiagTrack (вроде бы со встроенным кейлоггером) невозможно отключить. И в случае сбоя системы эта информация отправляется в Microsoft.
Вице-президент Microsoft Джо Бельфиоре (Joe Belfiore) сказал, что компания прислушивается к мнению пользователей, и если публика считает это проблемой, то работу неотключаемого сервиса диагностики можно изменить.
С выходом Threshold 2 многие прониклись уважением к Microsoft. Компания действительно прислушалась к критике. После обновления следящий процесс DiagTrack исчез из списка сервисов. Эксперты отметили это, что стало ещё одним поводом похвалить Microsoft за хорошую работу над обновлением Threshold 2.
Информацию подтвердили и другие источники.
Но за операционной системой нужно внимательно следить в будущем, проверяя настройки после каждого обновления. Помните, что операционная система не полностью под вашим контролем — команды для неё приходят из Редмонда вместе с апдейтами.
Перечисление устройств
Примеры
Самый простой способ перечисления всех доступных устройств — это сделать снимок с помощью команды FindAllAsync (описание приведено в разделе ниже).
Чтобы скачать пример, показывающий более сложное применение API Windows.Devices.Enumeration, перейдите по этой ссылке.
Интерфейсы API перечисления
Пространство имен перечисления позволяет обнаружить устройства, которые подключены к системе изнутри, внешним образом или могут быть обнаружены по протоколам проводной или беспроводной сети. Для перечисления возможных устройств используются API пространства имен Windows.Devices.Enumeration. Ниже приводятся некоторые случаи, в которых следует использовать эти API.
Эти API могут перечислять устройства по любому из следующих протоколов и шин ниже при условии, что конкретное устройство и система, в которой работает приложение, поддерживают соответствующую технологию. Этот список не является исчерпывающим, и конкретное устройство может поддерживать другие протоколы.
Во многих случаях вам незачем беспокоиться об использовании API перечисления. Это связано с тем, что многие интерфейсы API, использующие устройства, автоматически выбирают подходящее устройство по умолчанию или предоставляют упрощенный API перечисления. Например, MediaElement автоматически использует устройство обработки звука по умолчанию. Если ваше приложение может использовать устройство по умолчанию, нет необходимости использовать в нем API перечисления. API перечисления предоставляют универсальный гибкий способ обнаружения доступных устройств и соединения с ними. В этом разделе представлены сведения о перечислении устройств и четыре стандартных способа перечисления.
Объекты DeviceInformation
При работе с API перечисления часто приходится использовать объекты DeviceInformation. Эти объекты содержат большинство доступных сведений об устройстве. В таблице ниже описаны некоторые свойства DeviceInformation, которые вам пригодятся. Полный список см. на странице со справочной документацией по DeviceInformation.
| Свойство | Комментарии |
|---|---|
| DeviceInformation.Id | Это уникальный идентификатор устройства в виде строковой переменной. В большинстве случаев вы будете просто передавать это непрозрачное значение от одного метода к другому, чтобы указать конкретное устройство, которое вам необходимо. Это свойство и свойство DeviceInformation.Kind также можно использовать после закрытия приложения и его повторного открытия. Это гарантирует, что вы сможете восстановить и повторно использовать тот же самый объект DeviceInformation. |
| DeviceInformation.Kind | Указывает вид объекта устройства, представленного объектом DeviceInformation. Это не категория или тип устройства. Одно устройство может быть представлено несколькими различными объектами DeviceInformation разных видов. Возможные значения этого свойства и их взаимосвязи приводятся в разделе DeviceInformationKind. |
| DeviceInformation.Properties | Этот контейнер свойств содержит сведения, запрашиваемые для объекта DeviceInformation. На наиболее распространенные свойства можно легко ссылаться как на свойства объекта DeviceInformation, например DeviceInformation.Name. Дополнительные сведения см. в статье Свойства сведений об устройстве. |
Пользовательский интерфейс DevicePicker
DevicePicker — это элемент управления, предоставляемый Windows, который создает небольшой пользовательский интерфейс, чтобы пользователь мог выбирать устройство из списка. Есть несколько способов настройки окна DevicePicker.
При отображении элемента DevicePicker произойдет автоматическое обновление содержимого пользовательского интерфейса, если устройства добавляются, удаляются или обновляются.
Если вы захотите использовать трансляцию мультимедийного содержимого и DIAL, то они также имеют собственные средства выбора. Это CastingDevicePicker и DialDevicePicker, соответственно.
Перечисление снимка устройств
В некоторых сценариях DevicePicker может не подойти для ваших потребностей, и вам понадобится что-то более универсальное. Возможно, вы хотите создать собственный пользовательский интерфейс или перечислить устройства без отображения интерфейса для пользователя. В таких случаях можно перечислить снимок устройств. Для этого вы просматриваете устройства, которые в данный момент подключены к системе или связаны с ней. Однако следует помнить, что этот метод анализирует только снимок доступных устройств, поэтому вы не сможете обнаружить устройства, подключаемые после получения перечисления. Вы также не будете получать уведомления об обновлении или удалении устройства. Другим потенциальным недостатком, о котором следует упомянуть, является то, что данный метод удерживает все результаты до полного завершения перечисления. По этой причине не следует использовать данный метод, если требуется получить объекты AssociationEndpoint, AssociationEndpointContainer или AssociationEndpointService, поскольку они определяются по протоколу проводной или беспроводной связи. Этот процесс может занять до 30 секунд. В этом случае для перечисления возможных устройств необходимо использовать объект DeviceWatcher.
Чтобы выполнить перечисление посредством снимка устройств, используйте метод FindAllAsync. Этот метод ждет, пока весь процесс перечисления не будет завершен, и возвращает все результаты как один объект DeviceInformationCollection. Этот метод также перегружен и имеет несколько параметров для фильтрации результатов и выделения из них только нужных устройств. Для этого нужно предоставить значение DeviceClass или передать средство выбора устройств. Средство выбора устройств — это строка AQS, определяющая устройства для перечисления. Подробнее: Создание средства выбора устройств.
Ниже приводится пример снимка перечисления устройств:
Помимо ограничения результатов, также можно указать, какие свойства устройств необходимо получить. В этом случае указанные свойства будут доступны в контейнере свойств для каждого из объектов DeviceInformation, возвращаемых в коллекцию. Важно помнить, что не все свойства доступны для всех видов устройств. Чтобы узнать, какие свойства доступны для тех или иных типов устройств, изучите раздел Свойства сведений об устройстве.
Перечисление и отслеживание устройств
Более мощным и гибким способом перечисления устройств является создание объекта DeviceWatcher. Этот вариант обеспечивает максимальную гибкость при перечислении устройств. Он позволяет перечислять устройства, присутствующие в настоящий момент, а также получать уведомления при добавлении и удалении устройств, которые соответствуют параметрам средства выбора устройств, а также при изменении свойств устройств. При создании DeviceWatcher вы предоставляете средство выбора устройств. Подробнее о средствах выбора устройств: Создание средства выбора устройств. После создания наблюдателя вы будете получать следующие уведомления для любого устройства, которое соответствует указанным критериям.
В большинстве случаев использования DeviceWatcher вы храните список устройств и добавляете, удаляете или обновляете его элементы по мере того, как наблюдатель получает обновления от отслеживаемых устройств. При получении уведомления об обновлении измененная информация будет доступна как объект DeviceInformationUpdate. Чтобы обновить список устройств, сначала найдите соответствующий измененный объект DeviceInformation. Затем вызовите метод Update для этого объекта, предоставив объект DeviceInformationUpdate. Это удобная функция, которая автоматически обновляет объект DeviceInformation.
Поскольку DeviceWatcher рассылает уведомления при добавлении и изменении устройств, рекомендуется использовать этот метод перечисления устройств, если вас интересуют объекты AssociationEndpoint, AssociationEndpointContainer или AssociationEndpointService, так как они перечисляются по сетевым или беспроводным протоколам.
Наблюдение за устройствами как фоновая задача
Отслеживание устройств в фоновой задаче очень похоже на создание DeviceWatcher, рассмотренное выше. К слову, вам все равно придется сначала создать обычный объект DeviceWatcher, как описано в предыдущем разделе. После его создания вызовите GetBackgroundTrigger вместо DeviceWatcher.Start. При вызове метода GetBackgroundTrigger необходимо определить, какие из уведомлений вас интересуют: уведомления о добавлении, удалении или обновлении. Невозможно запросить обновление или удаление, не запросив также и добавление. После регистрации триггера объект DeviceWatcher сразу же начнет свою работу в фоновом режиме. С этого момента при получении нового уведомления для вашего приложения, которое соответствует заданным условиям, активируется фоновая задача, которая предоставит вам последние изменения с момента последней активации вашего приложения.
Некоторые беспроводные протоколы ведут себя по-другому, если ведут сканирование не в приоритетном, а фоновом режиме; они также могут совсем не поддерживать сканирование в фоновом режиме. Существует три варианта относительно возможности фонового сканирования. В следующей таблице перечислены возможности и их последствия для приложения. Например, Bluetooth и Wi-Fi Direct не поддерживают фоновое сканирование, поэтому они не поддерживают DeviceWatcherTrigger.
| Поведение | Влияние |
|---|---|
| Такое же поведение в фоновом режиме | Нет |
| В фоновом режиме возможно только пассивное сканирование | Для обнаружения устройства может потребоваться больше времени из-за ожидания пассивного сканирования. |
| Фоновое сканирование не поддерживается | С помощью DeviceWatcherTrigger не будут обнаруживаться никакие устройства, уведомления об обновлении не будут отправляться. |
Если DeviceWatcherTrigger использует протокол, который не поддерживает сканирование в качестве фоновой задачи, ваш триггер все же будет работать. Однако вы не сможете получать обновления или результаты по этому протоколу. Обновления для других протоколов и устройств будут по-прежнему работать нормально.
Использование DeviceInformationKind
В большинстве сценариев вам незачем беспокоиться о виде DeviceInformationKind объекта DeviceInformation. Это связано с тем, что средство выбора устройств, возвращаемое используемым API устройства, во многих случаях гарантирует получение правильных видов объектов устройств для использования с соответствующими API. Однако в некоторых сценариях вам может потребоваться получить DeviceInformation для устройств, притом что соответствующий API устройства для предоставления средства выбора устройств отсутствует. В этом случае вам потребуется создать собственное средство выбора. Например, у Web Services on Devices нет специализированного API, но вы можете обнаружить эти устройства и получить информацию о них с помощью API Windows.Devices.Enumeration, а затем использовать их с помощью API сокетов.
Если вы создаете собственное средство выбора устройств для перечисления объектов устройств, необходимо тщательно изучить DeviceInformationKind. Все возможные виды, а также их взаимосвязи описаны на странице справки для DeviceInformationKind. Один из самых распространенных способов использования DeviceInformationKind — определение вида устройств, которые вы ищете, при отправке запроса вместе со средством выбора устройств. Таким образом вы будете уверены, что перечисляете только те устройства, которые соответствуют указанному виду DeviceInformationKind. Например, вы можете найти объект DeviceInterface, а затем выполнить запрос, чтобы получить сведения для родительского объекта Device. Этот родительский объект может содержать дополнительные сведения.
Важно отметить, что свойства, доступные в контейнере свойств объекта DeviceInformation, могут отличаться в зависимости от значения DeviceInformationKind устройства. Некоторые свойства доступны только для определенных видов. Подробнее о том, какие свойства доступны для каких видов, см. в разделе Свойства сведений об устройстве. Следовательно, в примере выше поиск родительского элемента Device даст доступ к дополнительным сведениям, которые не были доступны из объекта устройства DeviceInterface. Поэтому когда вы создаете строки фильтра AQS, запрошенные свойства должны быть доступны для перечисляемых объектов DeviceInformationKind. Подробнее о создании фильтра: Создание средства выбора устройств.
Перечисление объектов AssociationEndpoint, AssociationEndpointContainer или AssociationEndpointService происходит по сетевому или беспроводному протоколу. В таких случаях вместо FindAllAsync рекомендуется использовать CreateWatcher. Дело в том, что при поиске по сети время ожидания операций поиска может достигать 10 и более секунд, прежде чем будет получено событие EnumerationCompleted. FindAllAsync будет работать до тех пор, пока не активируется событие EnumerationCompleted. Если вы используете DeviceWatcher, вы получите результаты, которые будут ближе к реальному времени, вне зависимости от того, когда вызывается событие EnumerationCompleted.
FIX-NOTE
Ваш помощник в цифровом мире
Повышаем производительность компьютера отключая неиспользуемые службы
Операционная система Windows предназначена для работы на персональных компьюетерах, лэптопах, мобильных устройствах, однако не всегда мощность устройства позволяет комфортно работать с этой операционной системой.
Windows очень многофункциональная система, способная удовлетворить почти все наши запросы для работы за компьютером. Но далеко не всеми функциями мы пользуемся, а они работают и тратят часть производительности нашего устройства.
Сегодня расскажем вам о некоторых сервисах, которые можно отключить, чтобы увеличить производительность вашего устройства.
Какие службы Windows можно отключать?
Какие службы можно отключать в Windows 10? Например, если у вас нет и вы не планируете пользоваться принтером, можно отключить службу печати. Или, если у вас нет тачпада и сенсорных устройств ввода, можно отключить службы, отвечающие за них, тем самым немного разгрузить работу операционной системы.
Как открыть список служб Windows
Вы можете открыть список служб Windows нажав комбинацию клавиш «Win+R» и в открышемся окне ввести «services.msc»
Или нажав комбинаци клавиш на клавиатуре «Win+X» Выбрать в списке «Управление компьютером» и жмем на вкладку «Службы»
Или открываем «Панель управления», выбираем пункт «Администрирование» и потом «Службы»
И так, вы открылы окно «Службы» Windows. Переключимся на вкладку «Расширенные», чтобы мы могли видеть полную информацию о выбранной службе, включена ли она и за что отвечает.
Как правильно отключить службу Windows?
ВАЖНО: Не отключайте службу, если вы не знаете, за что она отвечает. Отключив важную для работы системы службу, вы можете наоборот ухудшить работу вашего устройства.
Для отключения выбраной вами службы необходимо дважды кликнуть на название службы. Откроется окно свойств выбранной службы. Выберите в открывшемся окне Тип запуска: «Отключена», чтобы отключить службу. Обязательно после этого сохраните действие, нажав кнопку «Применить».
Какие службы можно отключать?
ВАЖНО: перестрахуйтесь и создайте точку восстановления системы. В случае, если вы сделаете что-то не так, вы всегда сможете восстановить систему до созданной вами точки. Инструкция: Как создать точку восстановления
Ниже приведен список некоторых служб, которые можно отключать без затрагивания основных процессов операционной системы. Вам остается только выбрать неиспользуемые:
Надеемся, у вас все получилось и вы сделали работу за компьютером немножечко удобнее. Если у вас есть какие-то вопросы, то смело задавайте их в комментариях.
Devicepicker что это за служба
This user service is used for managing the Miracast, DLNA, and DIAL UI.
This service exists in Windows 10 only.
Startup Type
| Windows 10 version | Home | Pro | Education | Enterprise |
|---|---|---|---|---|
| 1507 | not exists | not exists | not exists | not exists |
| 1511 | not exists | not exists | not exists | not exists |
| 1607 | not exists | not exists | not exists | not exists |
| 1703 | not exists | not exists | not exists | not exists |
| 1709 | not exists | not exists | not exists | not exists |
| 1803 | Manual | Manual | Manual | Manual |
| 1809 | Manual | Manual | Manual | Manual |
| 1903 | Manual | Manual | Manual | Manual |
| 1909 | Manual | Manual | Manual | Manual |
| 2004 | Manual | Manual | Manual | Manual |
| 20H2 | Manual | Manual | Manual | Manual |
| 21H1 | Manual | Manual | Manual | Manual |
Default Properties
Default Behavior
If DevicePicker fails to start, the error is logged. Windows 10 startup proceeds, but a message box is displayed informing you that the DevicePickerUserSvc service has failed to start.
Dependencies
DevicePicker is unable to start, if the Remote Procedure Call (RPC) service is stopped or disabled.
Restore Default Startup Type for DevicePicker
Automated Restore
1. Select your Windows 10 edition and release, and then click on the Download button below.
2. Save the RestoreDevicePickerWindows10.bat file to any folder on your hard drive.
3. Right-click the downloaded batch file and select Run as administrator.








