تو این آموزش می خوام شما رو با نحوه ی نوشتن یک سرویس منسجر با استفاده از کدهای WMI ویندوز آشنا کنم
برنامه با استفاده از vb.net نوشته میشه
اینجا می خوام لیستی از سرویس های ویندوز رو بگیرم و جزپیات اون ها رو هم بیارم
این کار رو با استفاده از زبان VB.net *انجام میدم
=======================
2 تا listview می زارم و اسم اولی رو می کنم LSTservice و LSTDetiles
حالا باید رفرنس زیر رو هم تو قسمت project properties*اضافه کنم هم در قسمت Generall کد ها
Imports System.Management
بعد
میام یک متغیر رو از نوع String*می زارم و مقدار “SELECT * FROM
Win32_service” رو بهش انتصاب می دم که همون کد های WQL هست که مثل همون
کدهای SQLO هم میمونه
Dim strLocal_service As String = "SELECT * FROM Win32_service"
حالا
یک متغیر رو از نوع ManagementObjectSearcher می سازیم و مقدار “SELECT *
FROM Win32_service” که داخل متغیر strLocal_service هست رو بهش انتصاب می
دیم
Dim sysservice_Searcher As New ManagementObjectSearcher(strLocal_service)
حالا
باید نتیجه رو با استفاده از حلقه For each در داخل listview چاپ کنیم
منتها باید از فرمان Get جهت شروع پرسوجو در متغیر استفاده کنیم
dim i as interger For Each servicelist As ManagementObject In sysservice_Searcher.Get() lvServices.Items.Add(servicelist("name").ToString) lvServices.Items(i).SubItems.Add((servicelist("State").ToString)) i = i + 1 Next servicelist
تو خط اول اومدم get زدم که پرسوجو شروع بشه و خطهای بعدی هم جهت اضافه کردن مقادیر در داخل listviewها هستش
اگه
توجه کنید من گفتم از متغیر Servicelist از Syntax با اسم Name*رو بیرون
بکش و اضافه کن به داخل listbox ( خاصیت name اسم سرویس هاست )
و بعد از Stat استفاده کردم که وضعیت سرویس ها رو نشون میده
در کلاس Win32_Service می تونید از مقادیر زیر هم استفاده کنید که دیگر ویژگی های مربوط به سرویس ها رو هم ببینید
boolean AcceptStop
string Caption
uint32 CheckPoint
string CreationClassName
string De******ion
boolean DesktopInteract
string DisplayName
string ErrorControl
uint32 ExitCode
datetime InstallDate
string Name
string PathName
uint32 ProcessId
uint32 ServiceSpecificExitCode
string ServiceType
boolean Started
string StartMode
string StartName
string
string Status
string SystemCreationClassName
string SystemName
uint32 TagId