Saya menghadapi masalah aneh. Saya telah menjadwalkan tugas untuk meluncurkan file batch. Ketika saya menjalankan tugas dengan opsi Run only when user is logged on
semuanya berfungsi dengan baik. tapi saya ingin menjalankan tugas ini di latar belakang dan karenanya saya menjalankannya menggunakan opsi Run whether user is logged on or not
. Sekarang ketika saya menjalankan tugas itu tidak berfungsi. Saya mendapatkan 2 kesalahan berikut. Saya tidak mengerti kesalahan ini. Tolong bantu saya menyelesaikan masalah ini.
Task Scheduler failed to launch action "C:\Windows\SYSTEM32\cmd.exe" in instance "{2a7cc950-fad9-4633-9701-af75a0fd220d}" of task "\stmm\Daemon". Additional Data: Error Value: 2147942667.
Task Scheduler failed to start instance "{2a7cc950-fad9-4633-9701-af75a0fd220d}" of "\stmm\Daemon" task for user "GBLADHEDANI\N011940" . Additional Data: Error Value: 2147942667.
Jawaban:
Saya punya masalah yang sama.
Solusi untuk saya ditemukan dalam artikel Microsoft KB 2452723:
Windows Vista dan seterusnya tugas terjadwal gagal berjalan jika jalur di bidang "Mulai dalam (opsional)" memiliki tanda kutip
Pada dasarnya, edit tugas terjadwal Anda dan keluarkan Kutipan dari bidang Mulai Masuk:
Untuk mendapatkan pesan kesalahan yang relevan:
1) Konversikan 2147942667 menjadi hex: 8007010B
2) Ambil 4 digit terakhir (010B) dan konversikan ke desimal: 267
3) Jalankan: net helpmsg 267
4) Hasil: "Nama direktori tidak valid."
sumber
Run whether user is logged on or not
, saya menggunakan pengguna lain untuk menjalankan aplikasi. Pengguna baru ini tidak memiliki izin yang sesuai untuk membaca data dan karenanya kesalahan. Terima kasih."C:\Some Path\"
, itu salah karena memiliki tanda kutip. Perlu mengatakan `C: \ Some Path` (tanpa tanda kutip).Bagi saya itu adalah "Mulai Masuk" - Saya menyalin nilai dari server yang lebih lama, dan memperbarui jalur ke lokasi .exe baru, tapi saya lupa memperbarui lokasi "mulai di" - jika tidak ada, Anda dapatkan kesalahan ini juga
Mengutip komentar hans-passant dari atas, karena itu berharga untuk men-debug masalah ini:
sumber
Ini bisa terjadi karena lebih dari satu alasan. Dalam kasus saya ini terjadi karena masalah izin. Pengguna yang menjalankan tugas sebagai tidak memiliki izin untuk menulis ke direktori log sehingga gagal dengan kesalahan ini.
sumber
Saya memiliki masalah yang sama, pada Windows7.
Saya mendapatkan kesalahan 2147942667 dan laporan tidak dapat menjalankan c: \ windows \ system32 \ CMD.EXE. Saya mencoba dengan dan tanpa tanda kutip ganda dalam Script dan Start-in dan tidak ada bedanya. Kemudian saya mencoba mengganti semua referensi path ke drive jaringan yang dipetakan dan dengan referensi UNC (\ Server1 \ Sharexx \ my_scripts \ run_this.cmd) dan itu memperbaikinya untuk saya. Menepuk.
sumber
Untuk jawaban yang lebih umum, ubah nilai kesalahan menjadi hex, kemudian cari nilai hex pada Windows Task Scheduler Error dan Success Constants
sumber
2147942667
ke HEX:0x8007010B
. Nilai itu tidak muncul di tautan yang Anda berikan. Hanya FYI, tentu saja.2147942667 in hex
. Google juga kalkulator sekarang.Bagi saya itu adalah "Mulai Di" - Saya tidak sengaja meninggalkan '.py' di akhir nama program saya. Dan saya lupa menggunakan nama folder di dalamnya ('Aplikasi').
sumber
Bagi saya, ini disebabkan oleh variabel lingkungan PATH pengguna, yang tampaknya tidak berfungsi meskipun pengguna itu benar, jadi saya perlu menempatkan seluruh jalur yang dapat dieksekusi ke dalam bidang program.
sumber