[C#] Windows Service

scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017 - 6 janv. 2005 à 14:33
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017 - 16 janv. 2006 à 18:49
Ayant un objet:
ServiceController m_oService;



On a :
m_oService.Start ();
m_oService.Stop ();


que l'on peut tester avec :

m_oService.Status == ServiceControllerStatus.Running
ou
m_oService.Status ==
ServiceControllerStatus.Stopped


c'est super mais maintenant, pour tester le disable/enable, ca se complique :
// Get extend informations
ManagementObject wmiService =
null;

try
{
wmiService =
new ManagementObject(
"Win32_Service.Name='" + oService.ServiceName +
"'");

if (wmiService !=
null)
{
wmiService.Get ();
}
}

catch (Exception e)
{
// Blah blah
}

if (wmiService !=
null)
{

// Start mode
if (wmiService[
"StartMode"].ToString () ==
"Disabled")
// Manual/Auto/Disabled
{
// Blahblah

}
}

bon tout ca fonctionne sans pb. Maintenant, comment définir le serice comme désactivé ou activé ?
----------------------------
C++ forever
C# amateur

5 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
6 janv. 2005 à 16:28
La classe Win32_Service possède une méthode ChangeStartMode

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
mbensilhe Messages postés 2 Date d'inscription lundi 14 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
16 janv. 2006 à 10:22
Bonjour,


Je souhaiterais savoir si il est possible de lancer un fichier excel contenant une macro à partir d'un service windows ?


En sachant que dès que le fichier est ouvert la macro s'exécute et referme le fichier toute seule.


Merci

Marcopolo
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
16 janv. 2006 à 11:58
Ton intention n'a pas l'air très honnête.... Je te suggère donc soit de préciser ton but final soit de te débrouiller par toi meme

----------------------------
C++ forever
C# amateur
0
mbensilhe Messages postés 2 Date d'inscription lundi 14 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
16 janv. 2006 à 18:27
En fait je souhaite juste savoir si on peut faire un process.start("excel.exe"); dans un service windows.
La commande fonctionne lorsque je lance un application console mais pas en tant que service windows.
Je vois le processus EXCEL.EXE ce lancer mais rien ne se passe.

Je te rassure mon intention est très honnête ou alors je suis viré ....

Je sais que ce n'est pas très catholique tout ça mais pas le choix en tout cas ;-))

Merci pour ton aide.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
16 janv. 2006 à 18:49
essaye voir deja de lancer une appli à la con qui fait un write dans un fichier.
Ca te permettra de voir déjà si ta routine fonctionne (je me souviens dans un prog de controle parental, lorsque tu recuperes les HWND en mode normal ou service ce n'était pas pareil et qu'il fallait ouvrir un objet de type WindowsDesktop ou qql chose du genre).
Une fois que ca ca fonctionne, remplace en mettant juste excel (essaie de chopper les codes d'erreur ca peut servir)

et ensuite t'avance pas à pas voir ce que ca donne.

Essaye voir aussi avec le Excel viewer 2003 plus leger ca peut donner D pistes

----------------------------
C++ forever
C# amateur
0
Rejoignez-nous