ควบคุมการใช้งาน Windows Service

เวลาที่คุณต้องการจะทำงานกับ Windows Service ไม่ว่าจะเป็นการดูรายการ Service ที่กำลังทำงานอยู่, หยุดการทำงาน Service หรือเปลี่ยนการตั้งค่า Service โดยไม่ต้อง Restart ระบบ ในการทำงานดังกล่าวกับ Windows Service นั้นเรามีโปรแกรมตัวหนึ่งที่ชื่อ SrvMan ซึ่งสามารถช่วยให้การทำงานงานขึ้น

>>คลิ๊กที่นี่เพื่อดาวน์โหลด SrvMan<<

โปรแกรมตัวนี้มีขนาดไฟล์เล็กและเป็นแบบ portable ซึ่งมี Graphic Interface แสดงผล หรือจะเลือกใช้งานผ่าน Command Line ก็ได้เช่นกัน

อย่างไรก็ตา่มโปรแกรมในการจัดการ Windows Service ผู้ใช้จะต้องมีความเข้าใจระบบ Windows พอสมควรจึงจะใช้ได้อย่างปลอดภัยเพราะการลบการทำงาน Service บางตัวอาจทำให้เกิดปัญหาในการทำงานของระบบได้

service-manager

ภาพข้างล่างแสดงการเลือก start mode

start-mode

คำสั่ง command line

1. สร้าง Service

srvman.exe add <file.exe/file.sys> [service name] [display name] [/type:<service type>] [/start:<start mode>] [/interactive:no] [/overwrite:yes]

service name เป็นชื่อที่่ Windows ใช้เป็นตัวอ้างอิงกับ service display name คือชื่อที่แสดงใน Windows Service snap-in โดย default แล้วทั้งสองชื่อจะถูกสร้างจากไฟล์ประเภท .exe หรือ .sys

ประเภทของ service

drv – สร้าง kernel driver

exe – สร้าง Win32 service

sharedexe – สร้าง Win32 service ที่มี shared executable file

fsd – สร้าง file system driver service

app – สร้าง service ประเภท Windows Application

ประเภทของ Start Mode

boot – service เริ่มทำงานเมื่อ OS ถึงเรียกทำงาน

sys – service เริ่มทำงานเมื่อ IoInitSystem() ถูกเรียกใช้งาน

auto – service เริ่มทำงานผ่าน Service Control Manager ในระหว่างที่มีการ startup

man – service เร่ิมทำงานเมื่อถูกสั่งแบบ manual (start/stop)

dis – service จะไม่ถูกเรียกให้เริ่มทำงาน

โดย default แล้ว Win32  จะสร้าง interactive service หากต้องการสร้าง non-interactive service คุณจะต้องเลือกค่า interactive:no จึงจะสามารถทำได้ และถ้า service ใด ๆ มีอยูก่อนแล้ว SrvMan จะรายงาน error ให้ทราบ อย่างไรก็ตามหากคุณใช้ overwrite:yes ระบบจะทำงานทับค่า service เก่าเมื่อซ้ำกันแทนที่จะรายงาน error

2. การลบ service

srvman.exe delete <service name>

ให้คุณใส่ internal service name ไม่ใช่ display nme

3. Start/Stop/Restart

คุณสามารถควบคุมคำสั่ง Start/Stop/Restart โดยใช้ command lind

srvman.exe start <service name> [/nowait] [/delay:<delay in msec>]
srvman.exe stop <service name> [/nowait] [/delay:<delay in msec>]
srvman.exe restart <service name> [/delay:<delay in msec>]

4. ทดสอบ Legacy Drivers

srvman.exe run <driver.sys> [service name] [/copy:yes] [/overwrite:no] [/stopafter:<msec>]

หากคุณไม่ต้องการจะใช้ command line ทั้ง 4 ข้อข้างบนนี้ก็สามารถใช้งานผ่านหน้าโปรแกรมซึ่งมี GUI รองรับการใช้งานได้ค่อนข้างสะดวกทีเดียว

ลิขสิทธิบทความของ 7boot.com
ผู้แทนจำหน่าย  IBM Storage และ Server