Windows Task Scheduler-এ টাস্কগুলো শিডিউল অনুযায়ী চলার পাশাপাশি নির্দিষ্ট ইভেন্ট লগে রেজিস্টার হওয়ার পরও চালানো যায়। (এ সম্পর্কে "Event Triggers in Windows" আর্টিকেলে বলা হয়েছে।) এই আর্টিকেলে আমরা দেখব পূর্বের টাস্ক সম্পন্ন হলে কীভাবে শিডিউলার টাস্ক স্বয়ংক্রিয়ভাবে শুরু করব। শিডিউলার টাস্কের নির্ভরতা কনফিগার করার অ্যালগরিদম দেখব, যেটি আপনার প্রয়োজন অনুযায়ী কাস্টমাইজ করা যাবে।
আমার কেসে, একটি স্ক্রিপ্ট 완료 হলে অন্য একটি ইউজার অ্যাকাউন্ট থেকে আরেকটি স্ক্রিপ্ট চালাতে হতো। তাই এই দুটি অ্যাকশন একই টাস্কে একসাথে করা সম্ভব নয়।
ধরে নিন, Ping টাস্কটি শেষ হলে Pong শিডিউলার টাস্কটি শুরু করতে হবে। কোনো টাস্ক শুরু বা শেষ হলে সিস্টেম লগে সেই ইভেন্টের তথ্য রেজিস্টার হয়। আমরা Ping টাস্ক সম্পন্ন হওয়ার ইভেন্টের ওপর ফোকাস করব।
Task Scheduler কনসোল (Taskschd.msc) খুলুন, Ping ইভেন্টটি খুঁজে বের করে সিলেক্ট করুন, এবং নিচের প্যানেলের History ট্যাবে যান যেখানে এই টাস্কের সাথে জড়িত সকল ইভেন্টের তথ্য থাকে। আমাদের দরকার Event ID 102 (Task completed) — যা টাস্ক সম্পন্ন হওয়ার পর জেনারেট হয়।

ডিটেইল্ড ইভেন্ট ডেসক্রিপশন খুলতে Detail ট্যাবে যান এবং XML View এনাবল করুন। XML ডেটা অনুযায়ী আপনি ইভেন্টের সব ডিটেইল পেয়ে যাবেন যা ফিল্টার তৈরি করতে দরকার। বিশেষ করে আমাদের লাগবে:
EventID: 102
Provider-Name: Microsoft-Windows-TaskScheduler
Channel: Microsoft-Windows-TaskScheduler/Operational
TaskName: \ping

Pong টাস্কের জন্য ট্রিগার তৈরি করার সময়, EventID 102 লগে আসায় টাস্ক শুরু হবে এমন শর্ত তৈরি করতে হবে (Task trigger On an event)। কিন্তু সমস্যা হল EventID 102 যেকোনো টাস্ক সম্পন্ন হলে আসে, শুধু Ping টাস্কের लिये নয়। 
তবে, স্ট্যান্ডার্ড ফিল্টার যদি যথেষ্ট নির্ভুল না হয়, তবে আরও নমনีย একটি শর্ত তৈরি করা যায় (Custom)। New Event Filter-এ ক্লিক করুন:

XML View-এ পাওয়া ডেটা দিয়ে নতুন ইভেন্ট ফিল্টার তৈরি করুন:
Events Logs: Microsoft-Windows-TaskScheduler/Operational
Event source: TaskScheduler
Task category: Task completed

তারপর XML ট্যাবে যান এবং ফিল্টারের XPath ভিউ দেখুন:
<QueryList>
<Query Id="0" Path="Microsoft-Windows-TaskScheduler/Operational">
<Select Path="Microsoft-Windows-TaskScheduler/Operational">*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and Task = 102]]</Select>
</Query>
</QueryList>

XPath কোডটি নিচের মতো পরিবর্তন করুন, যাতে \ping টাস্কের TaskCompleted ইভেন্ট ফিল্টার হয়:
<QueryList>
<Query Id="0" Path="Microsoft-Windows-TaskScheduler/Operational">
<Select Path="Microsoft-Windows-TaskScheduler/Operational">*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and Task = 102]]</Select>
</Query>
</QueryList>

ইভেন্টটি যোগ করার পর Ping টাস্কটি চালু করে দেখুন। এটি সম্পন্ন হলে Pong টাস্কটি সাথে সাথে শুরু হয়ে যাবে।
XPath-এর ব্যাখ্যা নিচে দেওয়া আছে:
