ข้อผิดพลาด 0x1 ของ Task Scheduler เป็นข้อผิดพลาดที่พบบ่อยที่สุดกับงานที่กำหนดเวลา (Scheduled Tasks) ใน Windows ผมเคยเจอปัญหานี้บนคอมพิวเตอร์และเซิร์ฟเวอร์ของผู้ใช้หลายคน รวมถึงเครื่องของตัวเอง และวิธีแก้ไขมักจะเหมือนกันหรือคล้ายกันเสมอ
สาเหตุของข้อผิดพลาด 0x1
ข้อผิดพลาด Task Scheduler (0x1) เกิดจากปัญหาเรื่อง System Path กล่าวคือ งาน (Task) ไม่สามารถรันสำเร็จได้ เพราะไม่พบไฟล์ที่ต้องการรัน
บางครั้งงานอาจแสดงว่ารันเสร็จแล้ว (Completed) แต่จริงๆ แล้วไม่ได้ทำสิ่งที่คุณต้องการ ผมจะอธิบายวิธีแก้ไขด้านล่าง
วิธีแก้ไขข้อผิดพลาด Task Scheduler (0x1) บน Windows
เพื่อแก้ไขข้อผิดพลาด 0x1 คุณต้องระบุ Path (เส้นทาง) ในช่อง Start in (optional) ภายในส่วน Edit Action ของ Scheduled Task
ทำตามขั้นตอนดังนี้:
- เปิด Task Scheduler โดยคลิก Start แล้วพิมพ์ "Task Scheduler" และคลิกที่แอป
- คลิก Task Scheduler Library
- คลิกขวาที่ Task ที่ต้องการ แล้วเลือก Properties
- คลิกแท็บ Actions
- คลิก Edit
- ในช่อง Start in (Optional) ให้พิมพ์ Path ที่จำเป็น
- หากไม่แน่ใจ Path ที่ถูกต้อง ให้คัดลอก Path จากช่อง Program/Script (ตัดชื่อโปรแกรม/สคริปต์ทิ้ง)
- ตัวอย่าง: ใส่ c:\Program Files\Microsoft Security Client\
- คลิก OK เพื่อปิดหน้าต่าง Edit Action
- คลิก OK อีกครั้งเพื่อปิด Scheduled Task
- รัน Scheduled Task อีกครั้ง
- ถ้า Last Run Result แสดง 0x0 แปลว่างานรันสำเร็จแล้ว
วิธีแก้ไขข้อผิดพลาด 0x1 เมื่อรัน Batch Files
เมื่อ Task Scheduler รัน Batch File แล้วเกิดข้อผิดพลาด 0x1 สาเหตุคือไม่พบไฟล์ที่ต้องการรัน เนื่องจากช่อง Start in (Optional) ว่างอยู่ โดยค่าเริ่มต้นจะใช้ Path คือ C:\Windows\System32 ซึ่งอาจไม่มีไฟล์ที่ Batch File เรียกใช้
ตัวอย่าง: Task เรียกใช้ C:\Data\Robocopy.cmd ซึ่งภายในไฟล์ .cmd เรียก Robocopy.exe ที่อยู่ในโฟลเดอร์เดียวกัน (C:\Data) หาก Start in ว่าง ระบบจะหา Robocopy.exe ใน System32 ไม่เจอ
วิธีแก้ไข (เลือกได้หลายวิธี):
- เปิด Task Scheduler → Task Scheduler Library → คลิกขวา Task → Properties → Actions → Edit
- ในช่อง Start in (Optional) ใส่ Path ของโฟลเดอร์ที่มีไฟล์ .exe (เช่น C:\Data\)
หรืออีกวิธี:
- คัดลอก Robocopy.exe ไปวางที่ C:\Windows\System32\
- แก้ไขไฟล์ Robocopy.cmd ให้ระบุ Full Path ของ .exe เช่น
C:\Data\Robocopy.exe "C:\Data\Files" "D:\Backup\%DATE%\"
วิธีแก้ไขข้อผิดพลาด 0x1 เมื่อรัน PowerShell Scripts
สำหรับ PowerShell Script ต้องตั้งค่า Execution Policy เป็น Bypass ใน Arguments ของ Task Scheduler
- เปิด Task Scheduler → Task Scheduler Library → คลิกขวา Task → Properties → Actions → Edit
- ช่อง Program/script: พิมพ์ powershell.exe
- ช่อง Add arguments: ใส่ -ExecutionPolicy Bypass -File "C:\Data\Script.ps1"
- ช่อง Start in (Optional): ใส่ Path ที่เก็บสคริปต์ (เช่น C:\Data)
หลังตั้งค่าเสร็จ ให้รัน Task ใหม่ และตรวจสอบ Last Run Result ว่าเป็น 0x0 หรือไม่