zDrvInst.exe - инсталляция драйверов и управление службами Синтаксис: zDrvInst.exe ServiceName [DriverFile] [DisplayName] [/install] [/uninstall] [/start] [/stop] [/status] [/nolog] ServiceName - имя сервиса DriverFile - файл драйвера DisplayName - если не указано, будет использоваться имя сервиса. /nolog - отключает лог Возвращает %ErrorLevel% последней выполненной комманды 0 - Sucess 1 - Error Примеры: zDrvInst.exe snapman "...\snapman.sys" /install - создать службу zDrvInst.exe snapman /start - запусить ее zDrvInst.exe snapman /status - показать информацию zDrvInst.exe snapman "...\snapman.sys" /install /start /status - то-же, но одной строкой. zDrvInst.exe snapman /uninstall - деактивирует службу и удаляет драйвер. /uninstall - комманда достаточно агрессивная, позволяет удалить службу, которая используется. К примеру, с помощью /uninstall можно использовать несовместимые версии Acronis без перезагрузки. VirusTotal - * X86 ** X64 *
Последний раз редактировалось: nikzzzz (2020-05-24 09:05), всего редактировалось 10 раз(а)
korsak7 У меня была древняя x86 версия, пользовался ее, устарела. Написал под себя. А из фишек - полная деинсталляция драйвера и службы, можно использовать для портативок, да и проблемы с несовместимыми версиями Acronis решает.
korsak7, я попросил для x64 native без использования sc.exe Аналоги есть, например http://tools.sysprogs.org/srvman/ , но размер больше nikzzzz, класс только вопрос остался - sys нужно кидать в папку Drivers или он сам скопирует? хреново, что аваст реагирует на x86
62163sys нужно кидать в папку Drivers или он сам скопирует?
Он ничего не копирует, а использует тот, что указан. Если нужно сделать сервис постоянным, можно и кинуть куда-нибудь, необязательно в Drivers, и оттуда запустить, если сервис временный можно и никуда не кидать, запускать например с флэшки, потом удалять, чтобы не мусорить в системе.
nikzzzz, ясно, если так, то рег файл тогда нужно редактировать было б круто добавить маску для установки типа zDrvInst.exe.exe snapman "...\snapman.*.sys" /install И если к примеру есть snapman.xp.sys, snapman.7.sys и snapman.10.sys то ставится тот, что соответствует ОС Впрочем может и зря эти извращения.. Для практического применения осталось обойти аваст!!!
62165было б круто добавить маску для установки типа zDrvInst.exe.exe snapman "...\snapman.*.sys" /install
Есть утилиты универсальные, которые решают много задач, но обычно через одно известное место, есть специализированные, которые решают одну задачу, но делают это гарантировано. Это специализированная утилита. Да и все равно утилита будет использоваться в скрипте, который с легкостью сам решит задачу выбора нужного драйвера.
62165Для практического применения осталось обойти аваст!!!
Посмотрел, не нравится ему полный доступ к сервису, хотя делается он штатными api средствами. К сожалению, обойти сложно, да и думаю, не поможет - не этот, так другой вирус найдет.
nikzzzz, Согласен, извращения не нужны. Черт попутал с хотелками..
Посмотрел, не нравится ему полный доступ к сервису, хотя делается он штатными api средствами. К сожалению, обойти сложно, да и думаю, не поможет - не этот, так другой вирус найдет.
ну такое.. я буду использовать твою 64 битку, но 32 битку не смогу из-за аваста, такая жизнь... кстати srvman x86 не детектится, хотя и имеет намного больше возможностей https://www.virustotal.com/#/file/23f83c26cc9ea9689...f26ce0/detection Это просто для примера, понимаю, что не все так просто, сам с таким сталкивался, иногда решение нашлось, но чаще нет..
Это нужно, когда работаешь с портабельными программами, где при выходи надо сносить драйвер.
Ну так я ж предложил оставить оба варианта. По поводу сносить драйвер - такое, это не критично, можно просто остановить сервис и перевести в ручной режим, а для PE вообще побоку.. На крайняк есть для удаления sc.exe
а можно ли %ErrorLevel% для /status сделать типа расширенный - загружен\остановлен\не существует\ошибка\... ?
У меня была такая идея, но отказался. Не нулевой %ErrorLevel% обычно означает ошибку, /status возвращает 0, если служба существует и 1 при ошибке. Не хочется портить эту традицию, тем более задача легко решается через find.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы