我想将启用usb的设备从启用切换为禁用,反之亦然。 我使用NetworkAdapter api在Windows 7中切换USB,它工作正常。但是,当我为Windows 8.1使用相同的代码时,即使api已禁用我的USB设备,更改也不会反映在设备管理器中。我可以确认,一旦我弹出并重新连接usb,设备就会被禁用。 我想知道是否有任何关于Windows 8.1的api更改,我可能不知道。如果不是我在哪里错了?
我的代码是:
switch (requiredstatus)
{
case "Disable":
SelectQuery query = new SelectQuery("Win32_NetworkAdapter","NetConnectionStatus=2");
ManagementObjectSearcher search = new ManagementObjectSearcher(query);
foreach (ManagementObject device in search.Get())
{
NetworkAdapter adapter = new NetworkAdapter(device);
// Identify the adapter you wish to disable here.
// Here, we're selecting the LAN adapters.
if (adapter.Name.Contains("Device1"))
{
//Console.WriteLine("Disable");
adapter.Disable();
result = true;
}
}
break;
case "Enable":
SelectQuery query1 = new SelectQuery("Win32_NetworkAdapter","NetConnectionStatus=0");
ManagementObjectSearcher search1 = new ManagementObjectSearcher(query1);
foreach (ManagementObject device in search1.Get())
{
NetworkAdapter adapter = new NetworkAdapter(device);
// Identify the adapter you wish to disable here.
// Here, we're selecting the LAN adapters.
if (adapter.Name.Contains("Device1"))
{
//Console.WriteLine("Enable");
adapter.Enable();
result = true;
}
}
break;
}