Stworzyłem usługę za pomocą
sc create myService binpath=myservice.bat
Ale kiedy go uruchamiam, pojawia się następujący komunikat o błędzie:
[SC] StartService FAILED 1053:
The service did not respond to the start or control request in a timely fashion.
W Win2k3 użyłem srvany.exe z zestawu zasobów, ale nie ma zestawu zasobów dla win2k8. Na razie zainstalowałem srvany.exe na moim komputerze, ale nie sądzę, że to najlepszy sposób, aby to zrobić.
Dzięki!
Odpowiedzi:
Oczywiście nie możesz uruchomić takiej usługi. Czy próbowałeś użyć srvany na serwerze 2008? O ile mi wiadomo, nie ma „oficjalnej” wersji srvany dla s2k8, ale zawsze możesz spróbować, prawda?
EDYCJA: Och, zapomniałem! Używamy również FireDaemon do uruchamiania aplikacji innych niż usługi jako usług. Chociaż nie jest darmowy, a jego funkcjonalność jest trochę za duża dla twoich potrzeb.
źródło
Użyj NSSM, aby uruchomić .BAT lub dowolny stary plik .EXE jako usługę. To prawie zamiennik dla SRVANY i jest bezproblemową aplikacją.
http://iain.cx/src/nssm/
Miałem ten sam problem co ty, a NSSM był jedynym narzędziem, które działało.
źródło
Używamy Harmonogramu zadań do uruchamiania zadania przy każdym uruchomieniu komputera (niezależnie od tego, czy użytkownik jest zalogowany czy nie)
źródło
Nie można po prostu uruchomić pliku .BAT ani żadnego starego pliku .EXE jako usługi. Usługi Windows nie działają tak jak Ty. Możesz użyć narzędzia takiego jak non-Sucking Service Manager (NSSM) lub niewolnego narzędzia SRVANY Microsoftu, aby uruchomić dowolny program jako usługę, ale może się okazać, że nie zachowuje się zbyt „płynnie” przy zatrzymywaniu.
źródło
Polecenie SC po prostu dodaje wymagane wpisy rejestru dla usługi - jeśli podany plik nie jest prawidłowym plikiem exe usługi, nie zamieni go w jeden.
źródło
from: ten post na forach technet: http://social.technet.microsoft.com/Forums/en-US/winserverMigration/thread/98a97aee-c62b-4683-94ab-3777899cf7de/
Oto co robić ...
W chwili publikacji tego artykułu nie ma narzędzi Windows Server 2008 Resource Kit, więc pobierz „srvany.exe” z „Windows Server 2003 Resource Kit Tools” i skopiuj go w odpowiednie miejsce na serwerze Win2008 (np. C: \ Windows \ System32 \). Użyj „sc”, aby utworzyć nową usługę, która uruchamia „srvany” (np. Sc stwórz MyService binPath = C: \ Windows \ System32 \ srvany.exe DisplayName = „My Custom Service”) Za pomocą RegEdit: utwórz klucz „Parametry” dla swojego usługa (np. HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ MyService \ Paramaters \) Za pomocą RegEdit: w nowo utworzonym kluczu „Parametry” utwórz wartość ciągu o nazwie „Aplikacja” i wprowadź pełną ścieżkę do aplikacji, którą chcesz uruchomić jako serwis. (Nie wymaga cytowania.)
I to powinno wystarczyć.
Uwaga: niektóre aplikacje przechowują swoje ustawienia w gałęzi użytkownika, a nie pod HKEY_LOCAL_MACHINE, więc będziesz musiał uruchomić aplikację, aby ją skonfigurować, a następnie skonfigurować usługę, aby działała jako ten użytkownik.
źródło
spróbuj tego ... zadziałało dla mnie ..
źródło
Natknąłem się na to. Oto narzędzie o nazwie Bat_To_Exe_Converter. Bardzo łatwo jest przekonwertować dowolne pliki .bat na pliki .exe. Spróbuj. Najpierw pobierz downloader, a następnie automatycznie pobierze Bat_To_Exe_Converter. To naprawdę pomogło mi stworzyć usługę, która uruchamia mój plik .bat przez .exe. http://download.cnet.com/Bat-To-Exe-Converter/3001-2069_4-10555897.html?spi=eae5ab48292cc101b5f0ec370cf99ad0
źródło
użyłem Windows schtasks.
możesz się do tego odwołać. https://technet.microsoft.com/en-us/library/cc725744.aspx#BKMK_hours
źródło
Znalazłem dwie inne opcje, które nie pozwolą ci sięgnąć po portfel.
Możesz
sc
uruchomić,srvany
który następnie wskazuje na twój program. (istnieje post na forum, do którego nie mogę utworzyć linku, ponieważ nie mam tutaj wystarczającej liczby przedstawicieli, ale robię to na StackOverflow - narzekam)Oto kroki, które wykorzystał oryginalny plakat:
sc
do tworzenia nowej usługi, która uruchamia sięsrvany
(np.sc create MyService binPath=C:\Windows\System32\srvany.exe DisplayName="My Custom Service"
)Parameters
klucz do swojej usługi (np.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MyService\Parameters\
)Parameters
klucza utwórz wartość ciągu o nazwieApplication
i wprowadź pełną ścieżkę do aplikacji, którą chcesz uruchomić jako usługę. (Nie wymaga cytowania.)Jeśli wydaje się to trochę włamaniem , możesz zbudować usługę .NET, aby uruchomić proces. Jeśli chcesz pominąć kilka kroków, oto usługa .NET typu open source, która może uruchamiać ogólne procesy:
http://www.codeproject.com/KB/system/xyntservice.aspx
Dostosuj go do swoich potrzeb, ale zrobi większość tego, co chcesz od razu po wyjęciu z pudełka.
źródło