Вопрос

Я всегда устанавливаю свои драйверы изображения напрямую. (C: Windows System32 Drivers abc.sys)

Но я просто знал, что многие драйверы устройств устанавливают свой образ Imagepath на %SystemRoot% System32 svchost.exe -k NetSvcs
enter image description here
Это реестр водителя Lanmanworkstation.
Я полагаю, что файл изображения драйвера Lanmanworkstation - это mrxsmb.sys
Но они не ставили «System32 Drivers mrxsmb.sys». Почему.

Что значит svchost.exe -k netsvcs иметь в виду?
Несмотря на то, что нет определенного пути, функция Startservice работает хорошо.
Как менеджер службы (? Я не уверен) находит путь изображения водителя?

Есть ли это преимущество, использующее это?
Что если я решите использовать таким образом, есть ли мои коды драйверов изменить?

Это было полезно?

Решение

Вы запутаете драйверы устройств и услуги.
svchost.exe используется для обмена одним и тем же процессом между несколькими службами. Реализация является внутренней для Windows, поэтому использование за пределами Windows не поддерживается.

Если вы пишете драйвер устройства (для оборудования или драйвер фильтра) или не работаете для Microsoft, вы не можете использовать SVChost.

Причина путаницы заключается в том, что старый стиль (NT4), непредвзятые и игровые драйверы можно начать с помощью API-интерфейсов управления сервисом.

Другие советы

SVChost - это хост -процесс для других услуг, содержащихся в DLL. Часть после «-K» указывает на сервисную группу. Вы можете найти путь DLL Service в HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters в ServiceDll ценность. Я предполагаю, что причина, по которой он все еще начинается правильно, если вы удалите путь изображения, потому что тип службы установлен на SERVICE_WIN32_SHARE_PROCESS, и SCM, вероятно, игнорирует путь изображения (не уверен в этом).

svchost.exe это «многоцелевая» сервис. Он включает в себя несколько сервисов в одном файле EXE, каждый из которых можно отдельно контролировать с помощью EG Services Console. Параметры для svchost.exe содержит «подчинку» внутри файла Exe.

Поскольку StartService () не является контрольным сообщением для самой службы, а вместо этого только запрос на запуск определенного исполняемого файла (который сам должен «знать», что это служба (и, если служба), а затем зарегистрируется в диспетчете управления службой), Windows просто выполнит двоичный файл, который ImagePath указывает на.

В этом случае (LanmanworkStation) этот бинарный svchost.exe, данный параметр, это -k netsvc. Анкет Это дает SVCHOST.EXE знать, какой из многих услуг он предоставляет.

Как обычно, двоичный файл не должен содержать всю функцию само по себе, но также может загружать дополнительные библиотеки. mrxsmb.sys Вполне может быть такой библиотекой, хотя я не уверен в этом.

Таким образом, этот ответ является скорее «как он работает в целом», чем «да, NETSVC и MRXSMB.SYS - Lanmanworkstation».

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top