我正在为Windows 8(C#5)编写一个Metro应用程序作为电源控制应用程序,允许用户启用和禁用计算机可能具有的各种设备。现在,我只是想蓝牙和无线网络适配器。最终我会添加其他设备,但一次只能添加一步。
我担心的主要方面是可靠地查找设备,启用和禁用它们,以及查询它们的状态(设备是否已启用?)。我需要能够在各种不同设备的机器上执行这些操作,包括多个NIC或蓝牙硬件设置。
我在Win7上查看了devcon,但我担心可靠地发现这些设备。如果我抓错设备,谁知道我将禁用什么,更不用说它不会禁用我打算禁用的内容。此外,我还没有在Win8上尝试它,它可能不是一个便携式应用程序,我不希望人们安装它,然后我的应用程序。
WMI很强大,但在没有一点指导的情况下总是有点吓人。如果这是我最好的选择,我会很感激一些资源。
命令行或.Net库是我所希望的,但我之前没有尝试过这种东西所以我对任何其他选择都持开放态度。此外,任何与其他设备(如蜂窝网卡或我尚未想到的设备)合作的远见都会很棒。
答案 0 :(得分:1)
您想要的大部分内容(例如蓝牙API)确实是远离Metro应用程序的沙盒。 Windows命名空间中有一些替代品,但它们是否满足您的需求我不知道。请查看http://msdn.microsoft.com/en-us/library/windows/apps/hh464945,其中包含指向使用设备的建议替代方案的链接。
具体而言,Windows.Devices.Enumeration命名空间表示它是关于查找设备的。然而,当我阅读页面时,似乎更多的是发现而不是控制。发现你无法控制它们我不会感到惊讶。但那是我开始挖掘的地方。