Докладываю.
Первым делом испытал неимоверное удовольствие от документации:
These commands work if you are using the 32-bit version of DevCon on WOW64.
Device
Console
Help
:
devcon
.
exe
[
-
и так далее
(кто бы объяснил, что делает команда, скажем, "точка"?..)
Хорошо, хоть в примерах есть что-то осмысленное. Ищем свои USB устройства:
D:\1>devcon find usb*
В ответ получаем жутко отформатированные строки, которые не вставляю в пост из гуманных соображений.
Делаю
D:\1>devcon find usb* > usbinfo (результат здесь)
Тщательное медитирование подсказывает нам, что искомый дивайс, вроде бы, вот он:
USB\VID_16D5&PID_6501&MI_01\6&11917D54&0&0001
Ну-ка...
D:\1>devcon status USB\VID_16D5&PID_6501&MI_01\6&11917D54&0&0001
No matching devices found.
"PID_6501" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Системе не удается найти указанный путь.
"11917D54" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
"0" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
"0001" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Ах, да, парсер амперсанды увидел. Попробуем кавычки:
D:\1>devcon status "USB\VID_16D5&PID_6501&MI_01\6&11917D54&0&0001"
No matching devices found.
Попробуем заэкранировать амперсанды:
D:\1>devcon status USB\VID_16D5\&PID_6501\&MI_01\6\&11917D54\&0\&0001
В гробу он видал экранирование.
Ладно, достаем бубен:
D:\1>devcon status USB\VID_16D5\\&PID_6501\\&MI_01\6\\&11917D54\\&0\\&0001
D:\1>devcon status USB\VID_16D5\\\&PID_6501\\\&MI_01\6\\\&11917D54\\\&0\\\&0001
D:\1>devcon status USB\VID_16D5\\\\&PID_6501\\\\&MI_01\6\\\\&11917D54\\\\&0\\\\&0001
На шести слешах заканчиваем упражнение. Родовая травма MSDOS, по всей видимости.
Встряхиваем бубен:
D:\1>devcon status "USB\VID_16D5&PID_6501&MI_01\6&11917D54&0&0001"
No matching devices found.
D:\1>devcon status "USB\VID_16D5&PID_6501&MI_01\6&11917D54&0"
No matching devices found.
D:\1>devcon status "USB\VID_16D5&PID_6501&MI_01\6"
No matching devices found.
D:\1>devcon status "USB\VID_16D5&PID_6501&MI_0"
No matching devices found.
D:\1>devcon status "USB\VID_16D5&PID_6501"
USB\VID_16D5&PID_6501\5&E831D1A&0&1
Name: Driver is running.
1 matching device(s) found.
Вах! А если рестарт?
D:\1>devcon restart "USB\VID_16D5&PID_6501"
USB\VID_16D5&PID_6501\5&E831D1A&0&1 : Restarted
1 device(s) restarted.
PPP-соединение тут же отвалилось, рестартовало автоматически и успешно восстановилось.
Ай да винда! Вон чего умеет!
Осталось теперь дождаться пропадания связи с модемом и проверить, поможет ли kick ass в реальной клинической практике.
А пока посмотрим в эту странную имитацию логов, "просмотр событий":
Подключение пользователя "mobile" к "Скайлингус", выполненное с помощью устройства "COM9", было прервано.
Успешно выполнено подключение пользователя "mobile"к "Скайлингус", с помощью устройства "COM9".
Погодите, какой COM9? Был же COM4?
D:\1>devcon find usb*
...
USB\VID_16D5&PID_6501&MI_01\6&11917D54&0&0001 : AnyDATA CDMA USB Serial Device (PID 6501) (COM4)
...
Чудны дела твои, Билли...