Недавно черт меня дернул на одной из машин с 1С:Предприятием вытащить ключь защиты HASP из порта при влюченном компе. НУ вытащил и вытащил, потом назад засунул. А он, сволоч, не подцепился.
Переустановка дров не помогла,
> hinstall.exe -r
> hinstall.exe -i
не помогли, хотя и сказали саксесфул))
Начал разбираться.
Система такая: WinXP SP3, 1C v8.1, лицензионный HASP ключ (USB).
После долгих поисков я начал рыться в реестре и нашел следующий способ для лечения этой проблемы:
1) делаем hinstall.exe -r
2) Перезагружаемся в "Безопасный режим" это нужно чтобы лишние дрова не цеплялись и не ставили лок на запись
3) Вынимаем ключ из порта (обязательно, иначе опять таки лок на запись реестра не снимится)
4) Ни в коем случае не запускаем (и не пытаемся) 1С. т.к. он поствит лок на записи, а за собой он их снимать не умеет (ну тупой он
)
5) лезем в regedit
6) ищем по ключевым словам "HASP" и "hardlock" и удаляем записи о дровах USB.
тут коммент:
вот собствено сам процесс поломки конструкции: 1С заблокировал запись в реестре. устройство вынули, а винда её удалить не смогла (лок стоит). вставляем ключ назад, винда создаёт новую запись, т.к. должна это сделать. В итоге - на один девайс 2 записи. 1С стучиться в первую - ответа нет, потому что ключ висит на второй.
7) После удаления перезапускаем систему в нормальный режим.
8) Вставляем USB-ключ
9) запускаем hinstall -i
10) перезапускаемся (зачем "по логике" не понял, но иначе не работает)
11) Стартуем 1С и радуемся.
Вот такая вот тупая винда не может удалить ключ устройства на которм стоит лок. И вот такой тупой 1С работает с драйвером на "довольно низком уровне", а локи за собой не снимает.