ช่องทำเครื่องหมาย "เปิดใช้งานการดำเนินการเมื่อหยุดด้วยข้อผิดพลาด" ถูกนำมาใช้กับ Windows Vista และ Windows Server 2008 โดยมีบรรทัดเอกสารที่น่าอายเพียงบรรทัดเดียว:
เลือกเปิดใช้งานการดำเนินการสำหรับหยุดพร้อมกับข้อผิดพลาดเพื่อทริกเกอร์การดำเนินการกู้คืนที่บริการหยุดทำงานด้วยข้อผิดพลาด
SC.exefailureflag
โปรแกรมยังได้รับการปรับปรุงเพื่อให้คำสั่งใหม่: เอกสารแสดงให้เห็นตัวอย่างที่ไม่ดีและไม่ได้จริงๆนำไปใช้กับ Windows Server 2003 แต่บอกเราว่าคำสั่ง:
ระบุว่าการดำเนินการกู้คืนจะถูกทริกเกอร์หรือไม่เมื่อบริการหยุดทำงานเนื่องจากข้อผิดพลาด
ดังนั้นช่องทำเครื่องหมายและsc failureflag
ใช้ในการตั้งค่าสถานะเดียวกัน
ลองพิมพ์sc failureflag
command prompt ในที่สุดเราก็ได้คำอธิบายที่ค่อนข้างดีมาแล้ว:
เปลี่ยนการตั้งค่าสถานะการกระทำที่ล้มเหลวของบริการ หากการตั้งค่านี้เป็น 0 (ค่าเริ่มต้น) Service Control Manager (SCM) จะเปิดใช้งานการดำเนินการล้มเหลวที่กำหนดค่าไว้ในบริการเฉพาะเมื่อกระบวนการบริการสิ้นสุดลงด้วยบริการในสถานะอื่นที่ไม่ใช่ SERVICE_STOPPED หากการตั้งค่านี้เป็น 1 SCM จะเปิดใช้งานการดำเนินการล้มเหลวที่กำหนดไว้ในบริการหากบริการเข้าสู่สถานะ SERVICE_STOPPED ด้วยรหัสทางออก Win32 ที่ไม่ใช่ 0 นอกเหนือจากการยกเลิกกระบวนการบริการดังกล่าวข้างต้น การตั้งค่านี้จะถูกข้ามหากบริการไม่ได้กำหนดค่าความล้มเหลวไว้
คำอธิบายที่คล้ายกันสามารถพบได้ที่นี่
ดังนั้นคำตอบที่ถูกต้องสำหรับคำถามต้นฉบับคือ: การกระทำการกู้คืนที่กำหนดไว้จะมีผลเสมอเมื่อบริการของคุณไม่ได้สิ้นสุดในสถานะ SERVICE_STOPPED "เปิดใช้งานการดำเนินการสำหรับการหยุดด้วยข้อผิดพลาด" ต้องตรวจสอบหากคุณต้องการเปิดใช้งานการดำเนินการกู้คืนด้วยเมื่อบริการของคุณเข้าสู่สถานะ SERVICE_STOPPED โดยที่รหัสทางออกไม่ใช่ 0 (ข้อผิดพลาด)