Rechercher dans ce blog
jeudi 11 janvier 2018
C# Déclanchement d'un event au changement d'un Service Windows
Permet de faire une capture d'un service Windows dès que le changement ce produit
try
{
var query = "SELECT * FROM __InstanceModificationEvent WITHIN 1 WHERE TargetInstance Isa "win32_Service" and TargetInstance.Name like 'SERVICENAME'";
var scope = new ManagementScope(@"root\cimv2", null);
scope.Connect();
EventQuery qry = new EventQuery(query);
w = new ManagementEventWatcher(scope, qry);
LabelAbonnement = LabelName;
w.EventArrived += EventArrived;
w.Start();
}
catch (Exception)
{
}
private void EventArrived(object sender, EventArrivedEventArgs e)
{
try
{
var targetInstance = (ManagementBaseObject)e.NewEvent["TargetInstance"];
foreach (var p in targetInstance.Properties)
{
LabelAbonnement.Invoke((MethodInvoker)(() => LabelAbonnement.TextValue = targetInstance.Properties["State"].Value.ToString()));
}
}
catch (Exception)
{
}
}
Inscription à :
Publier les commentaires (Atom)
Aucun commentaire:
Enregistrer un commentaire