Bonjour,

Je suis actuellement en train de développer une petite appli qui fait la gestion du service que je vais créer (plus tard).
Pour tester, je travaille donc sur les service déjà installé mais là, impossible de faire une modification :
Je peux voir s'il est installé ou pas, lancé, arrêté mais je ne peux pas le mettre dans l'état que je veux. Au départ je pensais que c'était parce que je travaillais sur un service système alors j'ai pris un service lancé sous mon nom et pareil.

Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
ServiceController controle_service = new ServiceController("MSSQLSERVER");
 
private void Form1_Load(object sender, System.EventArgs e)
{
      try
      {
            if (controle_service.Status == ServiceControllerStatus.Running)
            {
                pictureBoxSDem.Image = Client_OPC.Properties.Resources.Valide;
                boutonRedemarrerService.Enabled = true;
                boutonArreterService.Enabled = true;
            }
            else if (controle_service.Status == ServiceControllerStatus.Stopped)
            {
                pictureBoxSArr.Image = Client_OPC.Properties.Resources.Valide;
                boutonDemarrerService.Enabled = true;
            }
            pictureBoxSInstall.Image = Client_OPC.Properties.Resources.Valide;
       }
       catch (Exception ex)
       {
            string message = ex.Message;
            MessageBox.Show("Le service n'est pas installé \n" + message, "Attention", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
       }
}
 
private void boutonDemarrerService_Click(object sender, EventArgs e)
{  
         try
        {
            // Lancement du service
            controle_service.Start();
            MessageBox.Show("Service lancé", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
            boutonArreterService.Enabled = true;
            boutonDemarrerService.Enabled = false;
            boutonRedemarrerService.Enabled = true;
       }
       catch (Exception ex)
       {
           string message = ex.Message;
           MessageBox.Show("Problème de démarrage :\n" + message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
       }
}
 
private void boutonRedemarrerService_Click(object sender, EventArgs e)
{
        try
        {
            // Arrêt du service
            controle_service.Stop();
            // Lancement du service
            controle_service.Start();
            // On attend que le service soit bien relancé
            while (controle_service.Status != ServiceControllerStatus.Running) { }
            MessageBox.Show("Service redémarré", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
            boutonArreterService.Enabled = true;
            boutonDemarrerService.Enabled = false;
            boutonRedemarrerService.Enabled = true;
        }
       catch (Exception ex)
       {
            string message = ex.Message;
            MessageBox.Show("Problème de redémarrage :\n" + message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
       }
}
 
private void boutonArreterService_Click(object sender, EventArgs e)
{
       try
       {
           // On arrête le service
           controle_service.Stop();
           MessageBox.Show("Service arrêté", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information);
           boutonArreterService.Enabled = false;
           boutonDemarrerService.Enabled = true;
           boutonRedemarrerService.Enabled = true;
      }
      catch (Exception ex)
      {
           string message = ex.Message;
           MessageBox.Show("Problème d'arrête :\n" + message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
      }
}
Merci d'avance si vous savez ce qu'il faut faire pour que je puisse avoir la main dessus. Erreur précise c'est "Impossible de démarrer/arrêter le service ... sur ..."