[WIN] ติดตั้ง Windows Service ด้วย Command Line กันครับ

สำหรับหลายๆคนที่มีไฟล์ exe แล้วอยากจะผูกการทำงานให้อยู่กับ Service ของ Window ครับ ให้มันทำงานตั้งแต่เปิดเครื่อง หรือทำโดย User ที่สนใจ ตัว Windows เองมี Tools ที่ช่วยสำหรับงานนี้ครับ SC.exe

การสร้าง Service

รูปแบบคำสั่ง

SC.exe CREATE [ServiceName - ไม่มี Space] binpath= "Full Path ของ exe ถ้ามี Space ให่ใส่เครื่องหมายคำพูดครอบด้วย" DisplayName= "ชื่อ Service สำหรับแสดงผล" start= {boot | system | auto | demand | disabled | delayed-auto} 

ตัวอย่าง

SC.exe CREATE Sample_Service binpath= "C:\DebuggingSoft\DoSomeThing.exe" DisplayName= "Sample_Service" start= auto

การกำหนดคำอธิบายของ Service

รูปแบบคำสั่ง

SC.exe DESCRIPTION [ServiceName - ไม่มี Space ต้องสร้างก่อนแล้วนะ] "ตำอธิบาย"

ตัวอย่าง

SC.exe DESCRIPTION Sample_Service "This is sample service."

การหยุดการทำงานของ Service

รูปแบบคำสั่ง

SC.exe stop [ServiceName - ไม่มี Space ต้องสร้างก่อนแล้วนะ] 

ตัวอย่าง

SC.exe stop Sample_Service  

การลบ Service

รูปแบบคำสั่ง

SC.exe DELETE [ServiceName - ไม่มี Space ต้องสร้างก่อนแล้วนะ] 

ตัวอย่าง

SC.exe DELETE Sample_Service  

การเริ่มการทำงานของ Service

รูปแบบคำสั่ง

SC.exe START [ServiceName - ไม่มี Space ต้องสร้างก่อนแล้วนะ] 

ตัวอย่าง

SC.exe START Sample_Service 

การตรวจสอบสถานะของ Service

รูปแบบคำสั่ง

SC.exe QUERY [ServiceName - ไม่มี Space ต้องสร้างก่อนแล้วนะ] 

ตัวอย่าง

SC.exe QUERY Sample_Service<br>

SC.exe VS InstallUtil.exe

  • SC.exe ของ Windows ครับ
  • InstallUtil.exe ของ .NET Framework ครับ

ความแตกต่างระหว่าง SC.exe กับ InstallUtil.exe นั้น คือ ตัว InstallUtil.exe 1 executable สามารถลงแบบ Service ได้แค่ตัวเดียว เวอร์ชันเดียว (ดูจาก GUI) ที่เครื่องเท่านั้น ทำให้มีข้อจำกัดลง Service แบบหลาย Version ที่เครื่องเดียวกัน

Reference


Discover more from naiwaen@DebuggingSoft

Subscribe to get the latest posts sent to your email.