Saya telah membuat layanan menggunakan
sc create myService binpath=myservice.bat
Tetapi ketika saya memulainya, itu gagal dengan pesan kesalahan berikut:
[SC] StartService FAILED 1053:
The service did not respond to the start or control request in a timely fashion.
Pada Win2k3 saya menggunakan srvany.exe dari Resource kit, tetapi tidak ada resource kit untuk win2k8. Untuk saat ini saya telah menginstal srvany.exe di komputer saya, tetapi saya rasa itu bukan cara terbaik untuk melakukannya.
Terima kasih!
Jawaban:
Tentu saja Anda tidak dapat menjalankan layanan seperti itu. Apakah Anda mencoba menggunakan srvany di server 2008? Sejauh yang saya tahu tidak ada versi 'resmi' dari srvany untuk s2k8, tetapi Anda selalu dapat mencoba, bukan?
EDIT: Oh, saya lupa! Kami juga menggunakan FireDaemon untuk menjalankan aplikasi non-layanan sebagai layanan. Padahal, itu tidak gratis dan fungsinya agak terlalu banyak untuk kebutuhan Anda.
sumber
Gunakan NSSM untuk menjalankan .BAT atau file .EXE lama sebagai layanan. Ini hampir merupakan pengganti SRVANY dan aplikasi tanpa embel-embel.
http://iain.cx/src/nssm/
Saya memiliki masalah yang sama dengan Anda, dan NSSM adalah satu-satunya utilitas yang berfungsi.
sumber
Kami menggunakan Penjadwal Tugas untuk menjalankan tugas setiap kali komputer dijalankan (terlepas dari pengguna yang masuk atau tidak)
sumber
Anda tidak bisa hanya menjalankan file .BAT atau file .EXE lama sebagai layanan. Layanan Windows tidak berfungsi untuk Anda. Anda dapat menggunakan utilitas seperti NSSM ( Layanan Manajer Tidak Menyedot ) atau utilitas SRVANY Microsoft yang tidak bebas untuk menjalankan program sewenang-wenang sebagai layanan, tetapi Anda mungkin menemukan bahwa Anda tidak mendapatkan perilaku berhenti yang sangat "anggun".
sumber
Perintah SC hanya menambahkan entri registri yang diperlukan untuk layanan - jika file yang Anda tentukan bukan layanan exe yang valid, ia tidak akan mengubahnya menjadi satu.
sumber
dari: posting ini di forum technet: http://social.technet.microsoft.com/Forums/en-US/winserverMigration/thread/98a97aee-c62b-4683-94ab-3777899cf7de/
Inilah yang harus dilakukan ...
Pada saat posting ini, tidak ada Alat Kit Sumber Daya Windows Server 2008, jadi dapatkan "srvany.exe" dari "Alat Kit Sumber Daya Windows Server 2003" dan salin ke lokasi yang sesuai di server Win2008 Anda (mis. C: \ Windows \ System32 \). Gunakan "sc" untuk membuat layanan baru yang meluncurkan "srvany" (mis. Sc buat MyService binPath = C: \ Windows \ System32 \ srvany.exe DisplayName = "Layanan Kustom Saya") Menggunakan RegEdit: buat kunci "Parameter" untuk Anda service (mis. HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ MyService \ Paramaters \) Menggunakan RegEdit: di dalam kunci "Parameter" yang baru dibuat, buat nilai string yang disebut "Aplikasi" dan masukkan path lengkap ke aplikasi yang ingin Anda jalankan sebagai sebuah layanan. (Tidak perlu mengutip.)
Dan itu harus dilakukan.
Catatan: beberapa aplikasi menyimpan pengaturannya di sarang pengguna, bukan di bawah HKEY_LOCAL_MACHINE, jadi Anda harus menjalankan aplikasi untuk mengkonfigurasinya, dan kemudian mengonfigurasi layanan agar berjalan sebagai pengguna itu.
sumber
coba ini ... itu berhasil untuk saya ..
sumber
Saya menemukan hal ini. Berikut adalah alat yang disebut Bat_To_Exe_Converter. Sangat mudah untuk mengkonversi file .bat menjadi file .exe. Cobalah. Unduh pengunduh terlebih dahulu dan itu akan mengunduh Bat_To_Exe_Converter secara otomatis. Itu benar-benar membantu saya untuk membuat layanan yang menjalankan file bat saya melalui .exe. http://download.cnet.com/Bat-To-Exe-Converter/3001-2069_4-10555897.html?spi=eae5ab48292cc101b5f0ec370cf99ad0
sumber
saya menggunakan schtasks Windows.
Anda bisa merujuk ini. https://technet.microsoft.com/en-us/library/cc725744.aspx#BKMK_hours
sumber
Saya menemukan dua opsi lain yang tidak ingin Anda raih untuk dompet Anda.
Anda dapat memiliki
sc
peluncuransrvany
yang kemudian menunjuk ke program Anda. (ada posting forum yang tidak bisa saya tautkan karena saya tidak punya cukup rep di sini meskipun saya lakukan di StackOverflow - menggerutu)Berikut adalah langkah-langkah yang digunakan oleh poster asli:
sc
untuk membuat layanan baru yang diluncurkansrvany
(mis.sc create MyService binPath=C:\Windows\System32\srvany.exe DisplayName="My Custom Service"
)Parameters
kunci untuk layanan Anda (mis.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MyService\Parameters\
)Parameters
kunci yang baru dibuat , buat nilai string yang disebutApplication
dan masukkan path lengkap ke aplikasi yang ingin Anda jalankan sebagai layanan. (Tidak perlu mengutip.)Jika itu tampak seperti sedikit peretasan , maka Anda dapat membangun layanan .NET untuk meluncurkan proses Anda. Jika Anda ingin melewati beberapa langkah, berikut ini adalah layanan .NET open source yang dapat meluncurkan proses umum:
http://www.codeproject.com/KB/system/xyntservice.aspx
Tweak untuk kebutuhan Anda, tetapi itu akan melakukan sebagian besar dari apa yang Anda inginkan di luar kotak.
sumber