Re: помогите решить проблему с драйвером
От: Геннадий Майко США  
Дата: 06.03.06 14:07
Оценка:
Здравствуйте, aay, Вы писали:

aay>В общем ситуация такая. Есть компьютер (под windows 2000) в который устанавливается девайс (мультипортовая плата, стороннего поставщика) и естественно устанавливается драйвер. При установке драйвера устанавливаются ещё дополнительные у-ва (СОМ порты). Причём драйвера неподписанные. Вроде бы всё работает но есть одна загвоздка. Иногда возникает необходимость заменить установленный девайс на точно такой же. Новый девайс подключается вместо старого в тот же слот. Однако после замены винда почему-то не желает подхватывать имеющиеся в системе драйвера и предлагает установить их заново. Осложняется это всё ещё и тем что пользователь работает за компьютером под правами User и давать ему права администратора или Power User категорически нельзя (а без этого установить драйвер он не может). Можно ли как-нибудь переубедить винду чтобы она подхватывала уже имеющиеся в системе драйвера или на крайний случай автоматизировать этот процесс? Например дать пользователю пару программ в один щелчёк, чтобы первая запускалась перед заменой у-ва, а вторая после. Или может быть можно подправить дистрибутив с драйверами (может драйверописатели начудили что-то не так)?

aay>Пока я вижу несколько возможных путей, но не знаю приведут ли они к победе:
aay>1) Писать программы для установки и удаления драйверов. (нет достаточного опыта в области работы с драйверами и всякими SetupAPI)
aay>2) использовать утилиты типа devcon.exe (с ней тоже пока ничего не получается, даже просто установить драйвер пока не выходит)
aay>3) подправить inf файл (думаю самый идеальный вариант, но даже не знаю как к этому вопросу подступиться)
aay>4) использовать DIFx Tools (опять же незнаю насколько эти утилиты применимы к моей ситуации)
--
Похоже, что из-за того, что драйвера неподписаны, Windows считает установку драйверов как "client side" (см.здесь) и поэтому запускает Add Hardware wizard.
Можно попробовать написать программу установки драйвера (п.1 Вашего списка, примеры есть в devcon), однако многие функций SetupApiXXX требуют наличия прав администратора и поэтому я сомневаюсь, что в данном случае это поможет. Хотя можно попытаться временно в программе дать этому пользователю привелегию для установки драйверов (SeLoadDriverPrivilege)...

А почему просто нельзя решить эту проблему административно?
Получается, что с одной стороны, пользователю давать права администратора "категорически нельзя", а с другой — он может вскрывать машину и вставлять какие-то платы. Пусть этот процесс выполняет администратор и он же проведет установку/переустановку драйверов.

C уважением,
Геннадий Майко.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.