У меня есть лампа, которая подключается к USB-порту. Я хочу создать программу, которая позволит мне контролировать мое интернет-соединение, выключая лампу, когда у меня нет интернет-соединения, и снова включая ее, когда я это делаю.
У меня есть некоторый опыт в программировании, и я открыт для обучения. Как бы я поступил так?
windows-7
networking
usb
monitoring
интервьюер
источник
источник
Ответы:
Решением взломанного гетто было бы написать скрипт, который будет пинговать 8.8.8.8. Если он нашел ответ, то знает, что USB-порт должен быть включен. Иметь собственный INI-файл (или любой другой текстовый файл), чтобы указать его текущий статус. Если эхо-запрос возвращается успешно, проверьте ini-файл, чтобы убедиться, что порт уже включен. Если это так, то ничего не делать. В противном случае запустите сценарий enable_usb_port.reg, чтобы включить порт USB, изменив реестр. Если пинг возвращается неудачно, то вы знаете, что либо ваш пинг-сервер (8.8.8.8) не работает, либо у вас нет подключения к Интернету. Если вы не нашли интернет-соединения, запустите файл disable_usb_port.reg и обновите ini. Если ini уже указывает, что порт отключен, тогда ничего не делайте.
enable_usb_port.reg
иdisable_usb_port.reg
это просто мое соглашение об именах, и его нужно будет строить на основе информации ниже. Включите порт USB, а затем выберите, чтобы экспортировать файл реестра для этой строки. Отключите порт USB, а затем экспортируйте файл реестра для этой строки. Это должно дать вам два порта. Вы можете добавить сторожевой таймер и / или создать службу, чтобы скрипт работал в фоновом режиме независимо от того, вошел ли пользователь в систему или нет.Согласно статье 823732 базы знаний Майкрософт,
содержит инструкции по отключению доступа к USB-накопителю
для определенной группы пользователей это отключение и повторное включение
USB-портов основан на простой записи в реестре.
Чтобы отключить доступ к USB-порту, в Windows XP и 2000:
Нажмите Пуск, а затем нажмите Выполнить.
В поле Открыть введите regedit и нажмите кнопку ОК.
Найдите и щелкните следующий раздел реестра:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \
Услуги \ USBSTOR
На правой панели дважды щелкните Пуск.
В поле Значение введите 4, щелкните Шестнадцатеричный
(если он еще не выбран), а затем нажмите кнопку ОК.
Чтобы снова включить отключенный порт:
Нажмите Пуск, а затем нажмите Выполнить.
В поле Открыть введите regedit и нажмите кнопку ОК.
Найдите и щелкните следующий раздел реестра:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \
Услуги \ USBSTOR
На правой панели дважды щелкните Пуск.
В поле Значение введите 3, щелкните Шестнадцатеричный
(если он еще не выбран), а затем нажмите кнопку ОК.
Однако могут быть и другие способы обойти эту проблему,
Одним из самых простых является инвестировать в преобразователь портов PS2 в USB.
источник
Вы, вероятно, не можете сделать это, украшения USB, такие как лампы, не являются устройствами USB, они просто потребляют энергию через разъем USB. У моих настольных ПК всегда есть доступное питание на их USB-портах на передней панели, даже когда ПК выключен (поскольку в настоящее время на компьютерах отсутствует настоящий выключатель питания)
источник