Войти

Показать полную графическую версию : SC.exe|нужна помощь


morgan1991
10-03-2009, 15:42
Здравствуйте!
Помогите пожалуйста составить запрос в win xp для создания службы.
Сделал так:
sc create "TEST" binpath= C:\WINDOWS\system32\test.exe type= own start= auto displayname= "TEST_NAME" error= ignore
ещё нужно добавить к этому запросу чтобы служба при любом сбое перезапускалась, + процесс не должен быть скрытным, (просто видел создание службы через программу дак там службу можно сделать скрытной и программа которая запущена работает в скрытном режиме например сервер игры он запущен но его не видно, только в процессах висит)
Ко всему этому служба созданная по этому запросу
sc create "TEST" binpath= C:\WINDOWS\system32\test.exe type= own start= auto displayname= "TEST_NAME" error= ignore
создаётся но не запускается пишет что служба не ответила на запрос своевременно.

Admiral
11-03-2009, 03:26
morgan1991 сделано верно, можно ещё описание добавить sc description TEST "Описание сервиса TEST",
Перезапуск в случаи ошибки (задаётся через sc failure (http://technet.microsoft.com/en-us/library/cc742019.aspx)) можно организовать например так sc failure TEST reset=1 actions=run/5000
Все службы как раз и висят в процессах, и это не невидимость. В приложениях висят "процессы" с пользовательским интерфейсом (как с консольным - CUI, так и с графическим - GUI).
А вот возможность запуска и не запуска службы зависит от её самой, как она написана.
На MSDN есть статья Creating a Simple Win32 Service in C++ (http://msdn.microsoft.com/en-us/library/ms810429.aspx), хоть и старая (1995 года) но многие вещи по службо строению объясняет.
На другом источнике есть такая статья Five Steps to Writing Windows Services in C (http://www.devx.com/cplus/Article/9857).
На других языках ранее массово сервисы не писали. С приходам .NET службу можно писать хоть и на C#, в Visual Studio даже мастер на этот случай, кажется есть.

morgan1991
11-03-2009, 08:44
а что может мешать ей запускаться? Просто я создавал службу через одну прогу дак там можно скрытно запускать(от программы видно только процесс). а если в обычном режиме то прога видна полностью.

Petya V4sechkin
11-03-2009, 16:40
а что может мешать ей запускаться?
Чтобы обычную программу запустить как сервис, нужна оболочка (типа SrvAny):
[решено] Добавить свою запись в Службу Windows (http://forum.oszone.net/thread-82144.html)
Как запустить программу как сервис (http://forum.oszone.net/thread-68513.html)




© OSzone.net 2001-2012