Saya punya proses daemon yang saya jalankan di mesin saya setiap jam, dan meskipun saya sudah mencentang Hidden
kotaknya, itu tidak berhasil.
Setiap jam, tugas berjalan, tetapi itu menunjukkan jendela perintah hitam, di mana aplikasi .NET Console saya berjalan. Ini tetap terlihat sampai tugas selesai, dan kemudian menghilang. Ini sangat menjengkelkan, karena muncul dan mengganggu apa pun yang saya lakukan:
Saya benar-benar ingin itu disembunyikan, jadi bagaimana saya bisa memperbaikinya?
windows-7
task-scheduler
Joshua Frank
sumber
sumber
Jawaban:
Centang "Jalankan apakah pengguna masuk atau tidak" kotak centang dan dieksekusi akan berjalan di latar belakang.
sumber
Mengapa tugas terjadwal Windows 7 berjalan tersembunyi? harus menjelaskan mengapa ini terjadi.
Juga, uraian TechNet tentang Properti Tugas Umum ini menyatakan:
Bukankah ini menyiratkan bahwa kotak centang hanya menyembunyikan tugas itu sendiri dari UI penjadwal, dan bukan program aktual yang dijadwalkan?
sumber
Oke, setelah penelitian lebih lanjut saya menemukan jawaban ini di StackOverflow:
Sebuah komentar menunjukkan bahwa ini memberikan hak penuh untuk tugas tersebut, yang dapat mengganggu, tetapi dapat diterima dalam kasus ini.
Tapi tetap saja, apa gunanya
Hidden
, jika tidak melakukan ini? Dan mengapa akun pengguna yang menjalankan program ada hubungannya dengan apakah itu terlihat?sumber
SYSTEM
akun tidak memiliki akses ke file terenkripsi EFS pengguna lain.SOLUSI ULTIMASI
Jika itu adalah pemecah masalah bagi Anda, solusi utamanya adalah membuat file skrip JS seperti di bawah ini, yang akan menjalankan perintah Anda di jendela tersembunyi, tunggu perintah Anda untuk mengakhiri dan mengembalikan kode kesalahannya:
Simpan ini sebagai file js (myjob.js) dan tambahkan ini ke penjadwal tugas Anda: Selamat menikmati
sumber
"Jalankan apakah pengguna masuk atau tidak" akan memungkinkan opsi tersembunyi berfungsi. Perhatikan bahwa Anda perlu memberikan kredensial setelah memilih ini.
sumber
Keduanya:
akan mencegah jendela perintah hitam, tetapi perhatikan kelemahannya: Anda tidak akan dapat bekerja dengan beberapa alat otomatisasi GUI seperti 'AutoIt' atau SendKeys di PowerShell, karena Windows meluncurkan tugas dalam lingkungan gaya tanpa kepala.
sumber
Saya meninggalkan pengaturan default dan menulis program kustom pendek yang menelurkan eksekusi tanpa jendela yang menunjukkan. Misalnya, untuk menjalankan file batch tanpa memunculkan jendela command prompt, gunakan kode di bawah ini. Atur tugas untuk menelurkan "RunBatchFile.exe (path_to_batch_file)".
sumber
ProcessWindowStyle.Hidden
porsinya secara khusus, benar? Saya melihat sesuatu tentang ini di sini: msdn.microsoft.com/en-us/library/…Saya mengalami masalah dengan tugas terjadwal PowerShell (yang saya gunakan melalui GPO). Saya akhirnya membungkusnya di jendela perintah:
sumber