Как создать службу без сторонних программ?
Вот я, например, взял программу для создания служб, отследил изменения в реестре, по изменениям экспортировал все значения. После этого удалю ту же службу(через ту же программу) запускаю .reg файл и не удается записать в реестр по адресу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_ и HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceCurrent. Может надо по определённой последовательности записывать значение в реестр? Или можно создать через командную сроку?
Не большая сатья по "SC CREATE"
Примеры:
sc \\myserver create NewService binpath= "c:\windows\system32\NewServ.exe"
\\myserver - задает имя удаленного сервера, на котором находится служба. В имени следует использовать формат UNC ("\\myserver").
sc create NewService binpath= "c:\windows\system32\NewServ.exe" type= share start= auto depend= "Service"
Служба находится на вашем компьютере.
type= {own|share|kernel|filesys|rec|adapt|interact type= {own|share}} - Указывает тип службы. Тип по умолчанию type= own.
own - Служба выполняется в собственном процессе. Она не использует исполняемый файл совместно с другими службами.
share - Служба выполняется как общий процесс. Она использует исполняемый файл совместно с другими службами
kernel - Драйвер
filesys - Драйвер файловой системы
rec - Драйвер, определяющий файловую систему (указывает файловые системы, используемые на компьютере)
interact - Служба может взаимодействовать с рабочим столом, получая входные данные от пользователей. Интерактивные службы должны выполняться с системной учетной записью. Этот тип должен использоваться вместе с type= own или type= shared (например, type= interact type= own). Самостоятельное использование типа type= interact приведет к ошибке недопустимого параметра.
start= {boot|system|auto|demand|disabled} - Указывает тип запуска для службы. Тип запуска по умолчанию start= demand.
boot - Драйвер устройства, который загружается загрузчиком системы
system - Драйвер устройства, который запускается при инициализации ядра
auto - Служба, которая автоматически запускается при каждой перезагрузке компьютера и даже в том случае, если на компьютер не вошел ни один пользователь
demand - Служба, которая должна запускаться вручную. Это значение используется по умолчанию, если не указан параметр start=
disabled - Служба, которую нельзя запустить. Чтобы запустить отключенную службу, выберите другой тип запуска
error= {normal|severe|critical|ignore} - Указывает серьезность ошибки, если служба не запускается при загрузке. Значение параметра по умолчанию error= normal.
normal - Ошибка записывается в журнал и выводится окно сообщения, информирующее пользователя об отказе при запуске службы. Запуск будет продолжен.
severe - Ошибка заносится в журнал (если это возможно). Компьютер пытается перезагрузиться в последней удачной конфигурации. Компьютер можно будет перезагрузить, но выполнить службу, возможно, не удастся.
critical - Ошибка заносится в журнал (если это возможно). Компьютер пытается перезагрузиться в последней удачной конфигурации. Если имеет место отказ последней правильной конфигурации, запуск также приведет к отказу и процесс загрузки остановится на ошибке.
ignore - Ошибка заносится в журнал и запуск продолжается. Ошибка записывается в журнал ошибок и другие уведомления пользователю не выводятся.
binpath= имя двоичного пути
Указывает путь в двоичном файле службы. Значение по умолчанию для параметра binpath= не задано. Эту строку необходимо указать.
group= группа порядка загрузки
Указывает имя группы, членом которой является эта служба. Список групп сохраняется в реестре в подразделе HKLM\System\CurrentControlSet\Control\ServiceGroupOrder. Значение по умолчанию является пустым.
tag= {yes|no}
Указывает, следует ли получить код TagID из вызова CreateService. Теги используются только драйверами, запускающимися при загрузке или запуске системы.
depend= зависимости
Указывает имена служб и групп, которые должны быть запущены раньше данной службы. Имена разделяются косой чертой (/).
obj= {имя учетной записи|имя объекта}
Указывает имя учетной записи, для которой будет выполняться служба, или имя объекта драйвера Windows, в котором будет запущен драйвер.
displayname= отображаемое имя
Определяет понятное, точное имя для службы, которое используется в программах пользовательского интерфейса.
password= пароль
Задает пароль. Данный параметр требуется при использовании учетной записи, отличной от учетной записи «Локальная система».
/? - Отображает справку в командной строке.
Службы - [решено] Создание служб в ручную
-
Blast
Re: Службы - [решено] Создание служб в ручную
ШУМ, права на раздел реестра проверьте - на разделе правой кл. мыши - Разрешения
-
Shym
Re: Службы - [решено] Создание служб в ручную
Действительно помогло, но теперь другой вопрос, мне нужно файл .reg автоматически записывался в реестр, а как можно разрешить права на определённую ветку в реестре автоматически?
-
Petya V4sechkin
-
Котяра
Re: Службы - [решено] Создание служб в ручную
ШУМ,
можно порыть тут
Цитата Petya V4sechkin:
ШУМ, можно попробовать:
Код:
sc create /?
Т.е Пуск => Выполнить, ввести cmd нажать OK. Затем ввести
Цитата Petya V4sechkin:
sc create /?
.
Там все будет написано...
можно порыть тут
http://www.yandex.ru/yandsearch?text=srvany.exe
http://www.yandex.ru/yandsearch?text=instsrv.exe
http://support.microsoft.com/kb/137890
Цитата Petya V4sechkin:
ШУМ, можно попробовать:
Код:
sc create /?
Службы - [решено] Создание служб в ручную
Т.е Пуск => Выполнить, ввести cmd нажать OK. Затем ввести
Цитата Petya V4sechkin:
sc create /?
Службы - [решено] Создание служб в ручную
.
Там все будет написано...
-
Shym
-
Котяра
Re: Службы - [решено] Создание служб в ручную
ШУМ, для пометки темы решенной следует использовать пункт "Настройки темы", а не изменять название.
