IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[CLI] Service Windows qui ne démarre pas automatiquement


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de youcef81
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 241
    Points : 75
    Points
    75
    Par défaut [CLI] Service Windows qui ne démarre pas automatiquement
    Bonjour
    j'ai crée un script autant que service windows,ça marche bien, le problem c'est quand je specifie dans type de demarrage "Automatique".
    apres le demarrage du systeme le service ne demarre pas !
    or d'autres service qui sont automatique sont demarré ?
    quelqu un a une idée ?
    j'utilise l'extention win32service .dll pour php
    merci

  2. #2
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 488
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 488
    Points : 6 039
    Points
    6 039
    Par défaut
    Soit tu n'as pas tous expliqué soit tu t'es trompé de topic
    Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 17
    Points : 11
    Points
    11
    Par défaut
    Es-ce que ton serveur internet démarre automatiquement comme un service ou dois-tu le faire manuellement ?
    N'oubli pas que t'es script PHP sont supportés par un serveur internet tel que apache ou Microsoft IIS server web et qu'i est nécéssaire de les faire démarrer avant l'usage de tes scripts PHP.
    Mais peut'être suis-je hors sujet ?

  4. #4
    Membre régulier Avatar de youcef81
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 241
    Points : 75
    Points
    75
    Par défaut
    non t'ai pas hors sujet djinnwatcher,j'utilise Apache et il est demmarer automatiquement comme service aussi , et il ya pas de probeleme pour apache.
    c vrai il faut que apache soit demarrer pour que mon service fonctionne.
    maintenant comment savoir l'ordre de demarrage des service est ce que c apache avant ou mon service ? comment le svoir ? si c'est apache alors ou est le probleme sinon , que se passe t il ?


    berceker united :

    je sais pas comment expliquer plus ?
    g un service windows je l'ai creé en PHP ,il marche tres bien mais il ne demarre pas avec le systeme (Wxp Pro).malgrés que j'ai specifier dans les service Type de demarage Automatique ?
    alors si j'ai trompé de topic dit moi ? ou bien que veut savoir de plus ?

    merci

  5. #5
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 488
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 488
    Points : 6 039
    Points
    6 039
    Par défaut
    Ok, donc tu as créé un service en php (je voudrais bien en savoir un peut plus) Est ce que tu le vois dans la liste de tes process. Sous quel utilisateur il demarre?
    Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...

  6. #6
    Membre régulier Avatar de youcef81
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 241
    Points : 75
    Points
    75
    Par défaut
    quand je le demmare manuelement je le trouve pas dans la liste des processus dans le gestionnaire des taches de windows.

  7. #7
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 488
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 488
    Points : 6 039
    Points
    6 039
    Par défaut
    Tu le via ligne de commande parce que autrement je ne vois pas. En faite je m'y connais pas trop. Je me demande comment peut on créer un service en php enfin tu le sais il sagit maintenant de savoir comme windows active se service
    Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...

  8. #8
    Membre régulier Avatar de youcef81
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 241
    Points : 75
    Points
    75
    Par défaut
    pour la creation de service en PHP voila un lien :http://stephaneey.developpez.com/tut...rvice-windows/
    mais je pense qu il manque quelque chose dans la creation de service pour qu il demmare automatiquement .

    " il sagit maintenant de savoir comme windows active se service"
    je n'ai pas d'idée quelqu un a une idée ?
    merci

  9. #9
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 488
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 488
    Points : 6 039
    Points
    6 039
    Par défaut
    La je pense qu'il faut que tu poses la question sur un topic approprié parce que ça dépasse le cadre de php.
    Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...

  10. #10
    Membre régulier Avatar de youcef81
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 241
    Points : 75
    Points
    75
    Par défaut
    j'ai pas compris
    "Tu le via ligne de commande parce que autrement je ne vois pas"
    comment voir en ligne de commande ?

  11. #11
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 488
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 488
    Points : 6 039
    Points
    6 039
    Par défaut
    Citation Envoyé par youcef81
    j'ai pas compris
    "Tu le via ligne de commande parce que autrement je ne vois pas"
    comment voir en ligne de commande ?
    ouppss je deux mains droites
    Tu appelle le service via la ligne de commande ?
    Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...

  12. #12
    Membre régulier Avatar de youcef81
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 241
    Points : 75
    Points
    75
    Par défaut
    non
    pannneau de configuration->outils d'admin->service
    ensuite je clique deux fois sur le nom de service
    je voix pas ce que tu veux dire ?

  13. #13
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 17
    Points : 11
    Points
    11
    Par défaut
    J'ai recherché et trouvé sur la toile deux solutions :

    1 - Utiliser le registre Windows :
    Etapes :
    Aller sur démarrer, puis éxecuter : "regedit".
    Comme à chaque fois que l'on veut visiter le registre, on fait une sauvegarde.
    L'ordre de démarrage des services est stocké dans la clef :
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder
    Ouvrir l'objet "liste" puis modifier à bonne essient.

    2 - Utiliser un logiciel (freeware) :
    L'un deux se nomme Startup Delayer v2.2.66
    Le lien : http://www.r2.com.au/software.php?page=2&show=startdelay

  14. #14
    Membre régulier Avatar de youcef81
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 241
    Points : 75
    Points
    75
    Par défaut
    merci djinnwatcher
    pour la premiere solution j'ai pas trouvé mes service dans la base de registre ?
    d'ailleurs j'ai pas trouvé toutes les services ?

  15. #15
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2003
    Messages
    878
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 878
    Points : 1 067
    Points
    1 067
    Par défaut
    Citation Envoyé par youcef81
    j'utilise Apache et il est demmarer automatiquement comme service aussi , et il ya pas de probeleme pour apache.
    c vrai il faut que apache soit demarrer pour que mon service fonctionne.
    maintenant comment savoir l'ordre de demarrage des service est ce que c apache avant ou mon service ? comment le svoir ? si c'est apache alors ou est le probleme sinon , que se passe t il ?
    Citation Envoyé par youcef81
    pour la creation de service en PHP voila un lien :http://stephaneey.developpez.com/tut...rvice-windows/
    Tu nous donne un lien sans l'avoir lu : c'est mal.
    Si tu l'avais correctement lu, tu saurais qu'Apache ne sert à rien dans ton cas :
    Citation Envoyé par [url=http://stephaneey.developpez.com/tutoriel/php/service-windows/#L2]Exemple de démon PHP / 2. Téléchargement de l'extension[/url]
    Il est inutile de faire charger cette extension par Apache car les scripts de type démon seront exécutés via PHP-CLI.
    Et, pour rappel, "CLI" dans "PHP-CLI" veut dire "Command Line Interface".

    Et n'oublie pas la documentation de la fonction win32_create_service()...
    Un problème bien exposé
    est, pour moitié, solutionné. / La connaissance s'accroît quand on la partage, pas quand on l'impose. / La violence est le langage des faibles.

  16. #16
    Membre régulier Avatar de youcef81
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mai 2006
    Messages : 241
    Points : 75
    Points
    75
    Par défaut
    bien sur que j'ai lu l'article,
    sauf cette phrase ! , je sais pas comment je l'ai sauté !
    merci, sinon tu voix pas ou est le probleme alors ?
    il y a pas grand chose dans
    la documentation de la fonction win32_create_service().
    merci

  17. #17
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Points : 6
    Points
    6
    Par défaut Solution
    Je viens de plancher sur le même problème.
    Voici ce que j'ai trouvé, si ça peut aider d'autres personnes.

    Le service créé avec PHP ne se lance pas au démarrage de Windows car il a besoin que d'autres services soient lancés avant. Dans mon cas, il faut que MySQL et Tcpip soient lancés avant.
    Pour cela, il faut créer une dépendance dans ton service :
    - Lance regedit
    - Va dans le dossier HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Nom_court_de_ton_service
    - Crée la clé DependOnService de type Valeur de chaînes multiples (REG_MULTI_SZ) ayant comme valeur les services dont dépend le tien : (wampmysqld et Tcpip dans mon cas).
    Et voilà, ton service sera lancé au démarrage après les services dépendants que tu viens de définir.

    Je suis maintenant en train de voir comment ajouter cette clé de registre par programmation (en PHP). J'ai pas encore trouvé.

    Cordialement,
    Kerfred
    --

  18. #18
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 5
    Points : 6
    Points
    6
    Par défaut Ajouter une clé dans le registre Windows en PHP
    Pour ajouter une clé dans le registre Windows, j'avais d'abord pensé à la solution donnée en exemple sur php.net : http://fr.php.net/manual/fr/ref.com.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $WshShell = new COM("WScript.Shell");
    $WshShell->RegWrite("HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Mon_service\\DependOnService ", $ServicesDependants, "REG_MULTI_SZ");
    Mais cette méthode ne fonctionne pas avec le type REG_MULTI_SZ. C'est même indiqué dans la doc de Microsoft.

    J'ai donc utilisé un appel système à la fonction REG ADD :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $ListeDependances = implode('\0', array('wampmysqld', 'Tcpip'));
    $RegKey = "HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Mon_service";
    system("REG ADD $RegKey /v DependOnService /t REG_MULTI_SZ /d $ListeDependances /f") or die("Clé de registre des dépendances non créée");
    Et là, ça marche.

    Cordialement,
    Kerfred
    --

Discussions similaires

  1. Windows qui ne démarre pas
    Par labib23dz dans le forum Windows XP
    Réponses: 6
    Dernier message: 28/03/2010, 17h52
  2. Service Windows qui ne démarre pas en AUTOMATIQUE
    Par yellowsub122 dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 06/08/2009, 16h44
  3. Instance qui ne démarre pas (automatiquement)
    Par madmaxou dans le forum Administration
    Réponses: 3
    Dernier message: 24/07/2009, 09h34
  4. service windows qui ne demarre pas automatiquement
    Par youcef81 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 17/07/2006, 08h41
  5. Service windows qui ne repond pas
    Par youcef81 dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 03/06/2006, 14h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo