WINDOWS NT SERVICES

cs_dridri80 Messages postés 2 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 20 juin 2007 - 20 juin 2007 à 14:19
ritchieja Messages postés 1 Date d'inscription samedi 7 novembre 2009 Statut Membre Dernière intervention 7 mars 2013 - 7 mars 2013 à 11:27
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42978-windows-nt-services

ritchieja Messages postés 1 Date d'inscription samedi 7 novembre 2009 Statut Membre Dernière intervention 7 mars 2013
7 mars 2013 à 11:27
comment ajouter mon propre code a ce service
par exemple je veux ce service qu'il fait quelque chose ??
nurnen Messages postés 3 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 8 septembre 2009
8 sept. 2009 à 14:34
Dans NTService.c, dans la fonction suivante :
void WINAPI ServiceHandler(DWORD dwControl)
il faut ajouter :
case SERVICE_CONTROL_INTERROGATE:
break;
nurnen Messages postés 3 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 8 septembre 2009
8 sept. 2009 à 14:14
L'événement SERVICE_CONTROL_INTERROGATE n'est pas traité. Je pense que c'est la raison.

http://support.microsoft.com/kb/320789
nurnen Messages postés 3 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 8 septembre 2009
15 juin 2009 à 08:37
Au démarrage par net start, j'ai l'erreur "System error 1064 has occurred.
An exception occurred in the service when handling the control request."
(ERROR_EXCEPTION_IN_SERVICE)
Le service démarrage toutefois et semble se comporter correctement.
Exécuter le programme en ligne de commande ne lance pas le service.
Une idée pour enlever l'erreur?
Le lancement par le gestionnaire de services (graphique) fonctionne sans erreur.
cs_vicenzo Messages postés 178 Date d'inscription mardi 16 août 2005 Statut Membre Dernière intervention 25 août 2010 1
20 juin 2007 à 19:42
C'est que ton SDK ne contient pas ces constantes...
J'utilise le SDK fournis par VS2005.
Je viens de vérifier le SDK fourni par VC6 qui ... effectivement ne définit pas ces constantes...
Je mettrai la source a jour dans la soirée si possible...
Sinon tu peux rajouter, pour le moment, les lignes suivantes au début du service.c

#ifndef SERVICE_CONTROL_DEVICEEVENT

#define SERVICE_CONTROL_DEVICEEVENT 0x0000000B
#define SERVICE_CONTROL_HARDWAREPROFILECHANGE 0x0000000C
#define SERVICE_CONTROL_POWEREVENT 0x0000000D
#define SERVICE_CONTROL_SESSIONCHANGE 0x0000000E

#endif

Vincent
cs_dridri80 Messages postés 2 Date d'inscription vendredi 12 janvier 2007 Statut Membre Dernière intervention 20 juin 2007
20 juin 2007 à 14:19
j'obtiens les erreurs suivantes :

Compiling...
service.c
\service\service.c(165) : error C2065: 'SERVICE_CONTROL_DEVICEEVENT' : undeclared identifier
\service\service.c(165) : error C2051: case expression not constant
\service\service.c(166) : error C2065: 'SERVICE_CONTROL_HARDWAREPROFILECHANGE' : undeclared identifier
\service\service.c(166) : error C2051: case expression not constant
\service\service.c(167) : error C2065: 'SERVICE_CONTROL_POWEREVENT' : undeclared identifier
\service\service.c(167) : error C2051: case expression not constant
\service\service.c(168) : error C2065: 'SERVICE_CONTROL_SESSIONCHANGE' : undeclared identifier
\service\service.c(168) : error C2051: case expression not constant

que faire ?
Rejoignez-nous