Cara Membuat Perkhidmatan Windows

Cara Membuat Perkhidmatan Windows

Kadang -kadang anda memerlukan aplikasi atau skrip untuk terus berjalan sama ada anda log masuk ke komputer anda atau tidak. Mungkin ia adalah skrip PowerShell untuk memantau port atau pelayan web yang menganjurkan halaman di rangkaian rumah anda.

Maksudnya ialah jika anda mahukan proses, skrip, atau program untuk dijalankan selagi komputer dihidupkan, anda perlu membuat perkhidmatan Windows.

Isi kandungan

    NSSM boleh digunakan melalui Prompt Command Windows, atau antara muka pengguna grafik (GUI). Ini bermaksud sesiapa sahaja boleh menggunakannya. NSSM boleh digunakan pada mana -mana versi Windows kembali ke, dan termasuk, Windows 2000. Terdapat versi 32-bit dan 64-bit. Sekiranya anda menggunakan komputer 64-bit, cubalah versi itu terlebih dahulu. Sekiranya tidak berfungsi, kembali ke versi 32-bit.

    Anda boleh memuat turun NSSM dari laman web, klon NSSM dari Git, atau pasang NSSM dengan Chocolateey. Chocolation adalah pengurus pakej untuk Windows. Kaedah pemasangan akan berbeza -beza bergantung pada laluan yang anda ambil. Sila rujuk arahan NSSM. Sebagai contoh, kami memuat turun dari laman web NSSM dan memasangnya C: \ Windows \ System32.

    Buat Perkhidmatan Windows dengan NSSM

    Untuk contoh ini, kami akan membuat perkhidmatan daripada skrip PowerShell untuk log peratusan beban purata CPU.

    1. Salin dan simpan skrip ini sebagai log-cpuloadpercentage.PS1 ke tempat yang tidak mungkin diakses oleh orang lain. Cuba buat direktori C:/skrip dan menyimpannya di sana. Juga, buat folder dalam skrip yang dipanggil Log. Perhatikan bahawa jalan ke skrip adalah C:/skrip/log-cpuloadpercentage.PS1. Anda memerlukannya kemudian.

    Catatan: Semua baris di bawah diikuti oleh simbol # adalah komen dan tidak akan menjejaskan skrip.

    CLS #Optional. Saya suka menggunakan ini untuk membersihkan terminal semasa menguji. #Membuat anda mempunyai folder yang dipanggil log dalam direktori yang sama seperti skrip ini #log adalah tempat rekod akan disimpan. Start-transcript -path "$ psscriptroot \ logs \ log-cpuloadpercentage-$ (get-date -f yyyy-mm-dd).TXT "-Append #While Loop menyimpannya berjalan sehingga dihentikan secara manual ($ true) #creates a cap waktu untuk mengetahui apabila pengukuran diambil $ timestamp = get-date -f yyyy-mm-h: mm: ss #gets Peratusan beban purata pada masa itu, kemudian menunggu 5 saat untuk melakukannya lagi. $ cpuloadpercent = get-ciminstance win32_processor | Ukuran -Object -Property LoadPercentage -Reverage | Pilihan Pilihan Pilihan; Start-Sleep -Seconds 5 #Isolates Hanya Purata Jadi Tidak Ada Aneh @Average = 13 String $ cpuloadPercent = $ CPULOADPENTEN.Purata #Writes Hasil ke skrin, atau dalam kes ini ke log menulis-host "$ timestamp CPU Load Peratus $ cpuloadpercent" Stop-Transcript
    1. Ini boleh dilakukan sama ada Windows Command Prompt atau PowerShell. Buka sebagai pentadbir.
    2. Masukkan arahan NSSM Pasang LogCPuavg dan jalankan. The Pemasang Perkhidmatan NSSM tetingkap akan dibuka.
    1. Klik pada butang Ellipses di sebelah Jalan: medan, navigasi ke PowerShell.exe yang biasanya terletak di C: \ Windows \ System32 \. Pilih PowerShell.exe. The Jalan: dan Direktori Permulaan: Bidang akan dihuni secara automatik.
    1. Masukkan perkara berikut di Hujah: medan: -ExecutionPolicy Bypass -Noprofile -File "C: \ Pathtoscript \ Get -Script.PS1 ”, di mana bahagian terakhir adalah jalan ke skrip PowerShell anda dan nama skrip.
    1. Pilih Perincian tab. Masukkan apa yang anda mahukan perkhidmatan itu muncul seperti dalam Pengurus Perkhidmatan Windows ke dalam Nama paparan: medan. Kemudian, masukkan apa yang dilakukannya di Penerangan: medan. The Jenis Permulaan: boleh ditetapkan sebagai Automatik, Automatik (permulaan yang ditangguhkan), Manual, atau Kurang upaya. Untuk latihan ini, automatik baik.
    1. Pilih Log masuk tab. Pilih Akaun ini: butang radio dan masukkan akaun dan kata laluan yang akan dijalankan sebagai perkhidmatan. Anda perlu memilih akaun di mana perkhidmatan akan dijalankan. Sebaik -baiknya, anda akan mempunyai akaun Windows yang dibuat hanya untuk menjalankan perkhidmatan ini. Kebenaran akaun ini harus dihadkan hanya kepada perkhidmatan yang perlu dilakukan. Anda boleh memilih Akaun sistem tempatan, Tetapi ia tidak disyorkan atas alasan keselamatan.

    Terdapat beberapa tab lain yang boleh digunakan untuk menyesuaikan perkhidmatan. Untuk latihan ini, nilai lalai dalam tab tersebut mencukupi. Pilih Pasang perkhidmatan butang.

    1. Apabila perkhidmatan dipasang, anda akan melihat Perkhidmatan "LogCPuavg" berjaya dipasang! tetingkap. Pilih okey untuk menutupnya. Yang menyimpulkan pemasangan.
    1. Buka Pengurus Perkhidmatan Windows dan pastikan perkhidmatan itu ada.
    1. Jalankan perkhidmatan untuk memastikan ia berjalan.
    1. Untuk mengesahkan bahawa perkhidmatan ini berjalan, gunakan Penjelajah fail untuk menavigasi ke mana log sepatutnya disimpan untuk melihat apakah ia wujud.

    NSSM-CHECK-LOG.png

    Mengeluarkan Perkhidmatan Windows dengan NSSM

    Mungkin anda tidak perlu memantau beban CPU anda lagi, jadi anda ingin menyingkirkan perkhidmatan tersebut. Nasib baik, NSSM menjadikannya mudah.

    1. Di dalam Pengurus Perkhidmatan Windows, Hentikan perkhidmatan. Lakukan ini dengan memilih Log beban purata CPU perkhidmatan kemudian sama ada memilih butang berhenti persegi di bar alat atau Hentikan perkhidmatan pautan di sebelah kiri.
    1. Buka sama ada Windows Command Prompt atau PowerShell sebagai pentadbir.
    2. Masukkan arahan NSSM Keluarkan logcpuavg dan melaksanakan arahan.
    1. NSSM akan meminta anda mengesahkan. Pilih Ya.
    1. Apabila perkhidmatan dikeluarkan, anda akan melihat Perkhidmatan "LogCPuavg" berjaya dikeluarkan! Pengesahan. Pilih okey Dan anda sudah selesai.

    Itu sahaja. Adalah idea yang baik untuk memeriksa pengurus perkhidmatan untuk memastikan perkhidmatan tidak lagi ada. Sekiranya anda masih melihat perkhidmatan, anda mungkin perlu menyegarkan skrin dan ia harus hilang.

    Perkhidmatan adalah cara terbaik untuk menjalankan aplikasi atau skrip yang perlu dijalankan sepanjang masa, memulakan semula diri jika mereka gagal, atau memerlukan keistimewaan yang berbeza dari pengguna semasa. Sekiranya anda tidak memerlukan aplikasi atau skrip anda untuk melakukan semua perkara itu, pertimbangkan untuk menggunakan tugas yang dijadualkan sebaliknya.