J'ai quelques PC embarqués lentement fonctionnant sous Windows 2000 et j'ai du mal à démarrer un service de manière fiable. Il y a un délai TRÈS perceptible entre l'émission de la commande 'net start xxx' et le message 'the xxx service is starting'. Cela provoque le démarrage de mon service.commande de démarrage net retardée?
Mon service ne parvient pas régulièrement à recevoir une commande 'Démarrer' (je suis en train de m'enregistrer et je peux voir que cela ne se produit jamais).
J'ai essayé de répéter ceci sur une boîte XP beaucoup plus rapide, mais le délai est bien sûr BEAUCOUP plus court. J'ai cependant ajouté délibérément un sleep (60000) dans mon handler Onstart - pour simuler un démarrage lent.
Sur cette boîte (XP) - même si la commande net start renvoie 'le service xxx n'a pas pu être démarré (après environ 20+ secondes), le service semble continuer et commence effectivement. Pendant ce temps, le responsable du service signale le «démarrage» - jusqu'à ce que mon sommeil (60000) se termine et que les rapports du gestionnaire de service aient commencé.
J'ai ÉGALEMENT essayé de mettre l'entrée de registre 'ServicesPipeTimeout' à 65000 - et cela semble n'avoir fait aucune différence: -O- oui j'ai fait un redémarrage ;-).
Quelqu'un at-il une idée de pourquoi cela se produit s'il vous plaît? Même si j'ai défini mon entrée de registre 'ServicesPipeTimeout' sur 65000 - le démarrage net échoue au bout de 20 secondes: -O.
Il semblerait que si je parviens à obtenir une commande de démarrage émise avant que cette commande 'net start' expire - mon service démarrera en effet. C'est pourquoi j'ai essayé de définir l'entrée de registre 'ServicesPipeTimeout' sur 65000 - mais cela ne semble pas faire de différence du tout. NB Mon application de service est écrite en C# en utilisant VS2008 ciblé sur .Net Framework V2 - comme c'est tout ce que les anciennes boîtes 2000 peuvent supporter.
Un grand merci - jamais je l'espère ....
Cordialement
Graham