Используйте Devcon в пакетном скрипте для отключения и включения устройств так же, как вы могли бы сделать это в диспетчере устройств.
Devcon DL http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q311272 (теперь и в 32-битном, и в 64-битном 78K-файле ZIP)
Я не знаю, на самом деле это будет работать в Windows 8, но нет никаких оснований полагать, что это не будет. Поскольку я являюсь администратором на моем компьютере, я не знаю, сколько вещей вам придется сделать дополнительно, чтобы сделать это с разрешения (run_as). Кроме того, существуют способы использования диспетчера задач для получения более высокого разрешения, которые здесь не рассматриваются.
У вас должны быть те же привилегии для управления элементом с помощью devcon, как и для управления им с помощью диспетчера устройств.
Руководство:
Найдите в диспетчере устройств устройство, которое вы хотите отключить / включить, а затем отключить и включить его там, чтобы увидеть, как оно отреагирует, время, необходимое для изменения состояния, и все.
Щелкните правой кнопкой мыши по устройству и найдите на вкладке «Свойства» сведения об устройствах.
Поместите devcon.exe в доступное место, либо в system32, либо в пути к среде, либо в месте запуска для приглашения Cmd. Или CD к этому месту.
Простое использование devcon для обнаружения идентификатора устройства, которое оно распознает
Откройте приглашение CMD
использовать >Devcon /Find *
Добавьте в подстановочный знак вещи, которые уменьшают список, специфичный для вашего устройства.
>Devcon /Find *3034*
Придерживайтесь подстановочных знаков, но добавьте достаточное количество идентификатора, чтобы найти устройство, и только одно устройство будет найдено.
Продолжая играть в CMD, примените статус, включите и отключите обнаруженное вами имя устройства с подстановочными символами.
>Devcon /status *3034*
>Devcon /enable *3034*
>Devcon /disable *3034*
Отказ от ответственности: Конечно, убедитесь, что вы не собираетесь отключить что-то важное, потому что вы будете по-королевски закрыты. Использование подстановочных знаков облегчает выбор элемента, последствия, приводящие к отключению неправильной вещи, могут помешать вам продолжить.
Теперь вы можете просто вставить это в ярлык, вставив его в любой старый ярлык, из которого он может найти эту программу.
Сделайте пакет переключения, это сокращенная партия, которую я использую, чтобы отключить сетевой адаптер, я также включил воспроизведение звука, чтобы определить, что происходит (вырезать тоже).
echo OFF
cls
DEVCON.exe >"%USERPROFILE%\Local Settings\Temp\DeviStatus" status *811A1043*
FIND /I /C "RUNNING" "%USERPROFILE%\Local Settings\Temp\DeviStatus"
IF %ERRORLEVEL% GTR 0 GOTO NOTRUNNING
ECHO driver is probably running disable it
DEVCON.exe disable *811A1043*
exit
:NOTRUNNING
echo driver is probably not running enable it
DEVCON.exe enable *811A1043*
exit
Я широко использую этот метод для управления одним нажатием кнопки на многих элементах устройства в моей системе с добавлением голоса (аудио) в пакет для информирования о состоянии каждого из устройств. Все они работают от значков на панели инструментов, все с переключателем, поэтому он остается одной кнопкой.
Этот метод полностью отключает устройство (для устройств, которые будут отключать), так же как и диспетчер устройств, освобождая любую память, которую он будет использовать, и то, какой маленький процессор он мог бы использовать.