Обнаружить и включить/отключить устройства на Win8?

Я пишу метро-приложение для Windows 8 (C# 5), которое действует как приложение для управления питанием, позволяющее пользователю включать и отключать различные устройства, которые, вероятно, будут иметь компьютер. Пока я просто думаю о Bluetooth и беспроводном сетевом адаптере. Со временем я добавлю другие устройства, но постепенно.

Основные аспекты, о которых я беспокоюсь, — это надежный поиск устройств, их включение и отключение, а также запрос их состояния (устройство уже включено?). Мне нужно иметь возможность выполнять любое из этих действий на разных машинах с различными устройствами, в том числе с несколькими аппаратными настройками NIC или Bluetooth.

Я просмотрел devcon на Win7, но беспокоюсь о надежном обнаружении устройств. Если я возьму не те устройства, кто знает, что я отключу, не говоря уже о том, что это не отключит то, что я собираюсь отключить. Кроме того, я еще не пробовал его на Win8, и это может быть не переносное приложение, я не хочу, чтобы люди устанавливали его, а затем мое приложение.

WMI мощен, но всегда немного пугает бродить по нему без небольшого руководства. Если это мой лучший выбор, я был бы признателен за некоторые ресурсы.

Командная строка или библиотека .Net - это то, на что я надеюсь, но я никогда раньше не пробовал такие вещи, поэтому я открыт для любых других альтернатив. Кроме того, любое предвидение работы с другими устройствами, такими как карты сотовой сети или устройства, о которых я еще не думал, было бы здорово.


person Corey Ogburn    schedule 13.10.2011    source источник
comment
Если WMI не находится в изолированной программной среде из рук апплета Metro, то в песочнице не так много смысла, не так ли? Что мне не хватает?   -  person Bob77    schedule 13.10.2011
comment
Вы думаете о настольном приложении или приложении в стиле метро?   -  person Steve Rowe    schedule 13.10.2011
comment
Я думаю о приложении в стиле метро, ​​и, честно говоря, я не знаю, изолирован ли WMI от приложений метро или нет.   -  person Corey Ogburn    schedule 13.10.2011


Ответы (1)


Многое из того, что вам нужно (например, Bluetooth API), действительно изолировано от приложений Metro. В пространстве имен Windows есть несколько заменителей, хотя я не знаю, удовлетворят ли они ваши потребности. Взгляните на http://msdn.microsoft.com/en-us/library/windows/apps/hh464945 со ссылками на предлагаемые альтернативы для работы с устройствами.

В частности, пространство имен Windows.Devices.Enumeration говорит речь идет о поиске устройств. Однако, когда я читаю страницу, кажется, что это больше об открытии, а не о контроле. Я не удивлюсь, если обнаружу, что вы не можете их контролировать. Но я бы начал копать.

person Kate Gregory    schedule 13.10.2011