CLXV. Fonctions win32service

Introduction

L'extension win32service est une extension spécifique à Windows qui autorise PHP à communiquer avec la Gestion de Contrôle de Service pour démarrer, arrêter, enregistrer ou effacer des services, et autorise aussi vos scripts PHP à s'exécuter en tant que service.

Pré-requis

Windows NT, Windows 2000, Windows XP ou Windows Server 2003. N'importe quelle version de windows dérivé de Windows NT devrait être compatible

Installation

Installation à partir de PECL

  1. Vous pouvez télécharger php_win32service.dll à partir de http://snaps.php.net/win32/. Choisissez le dossier PECL_X_X qui concorde avec votre version de PHP.

  2. Copiez le fichier php_win32service.dll dans votre extension_dir.

  3. Charge l'extension à partir de votre php.ini

    extension=php_win32service.dll

Exemples

Exemple 1. Enregistre un script PHP pour exécuter en tant que service

<?php
win32_create_service
(array(
      
'service' => 'dummyphp',                # le nom de votre service
      
'display' => 'sample dummy PHP service', # description
      
'params' => 'c:\path\to\script.php run', # chemin au script et paramètres
  
));
?>

Exemple 2. Efface un service

<?php
win32_delete_service
('dummyphp');
?>

Exemple 3. Exécution d'un service

<?php
if ($argv[1] == 'run') {
 
win32_start_service_ctrl_dispatcher('dummyphp');

  while (
WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {
  
# effectuer votre travail ici.
   # essayez de ne pas prendre plus de 30 secondes avant de retourner au
   # début de la boucle
 
}
}
?>

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

WIN32_SERVICE_CONTROL_CONTINUE (entier)

WIN32_SERVICE_CONTROL_INTERROGATE (entier)

WIN32_SERVICE_CONTROL_PAUSE (entier)

WIN32_SERVICE_CONTROL_STOP (entier)

WIN32_SERVICE_CONTROL_HARDWAREPROFILECHANGE (entier)

WIN32_SERVICE_CONTROL_POWEREVENT (entier)

WIN32_SERVICE_CONTROL_SESSIONCHANGE (entier)

WIN32_ERROR_CALL_NOT_IMPLEMENTED (entier)

WIN32_NO_ERROR (entier)

WIN32_SERVICE_RUNNING (entier)

WIN32_SERVICE_STOPPED (entier)

WIN32_SERVICE_STOP_PENDING (entier)

WIN32_SERVICE_WIN32_OWN_PROCESS (entier)

WIN32_SERVICE_INTERACTIVE_PROCESS (entier)

WIN32_SERVICE_STOPPED (entier)

WIN32_SERVICE_START_PENDING (entier)

WIN32_SERVICE_STOP_PENDING (entier)

WIN32_SERVICE_RUNNING (entier)

WIN32_SERVICE_CONTINUE_PENDING (entier)

WIN32_SERVICE_PAUSE_PENDING (entier)

WIN32_SERVICE_PAUSED (entier)

WIN32_SERVICE_ACCEPT_NETBINDCHANGE (entier)

WIN32_SERVICE_ACCEPT_PARAMCHANGE (entier)

WIN32_SERVICE_ACCEPT_PAUSE_CONTINUE (entier)

WIN32_SERVICE_ACCEPT_SHUTDOWN (entier)

WIN32_SERVICE_ACCEPT_STOP (entier)

WIN32_SERVICE_ACCEPT_HARDWAREPROFILECHANGE (entier)

WIN32_SERVICE_ACCEPT_POWEREVENT (entier)

WIN32_SERVICE_ACCEPT_SESSIONCHANGE (entier)

WIN32_SERVICE_FILE_SYSTEM_DRIVER (entier)

WIN32_SERVICE_KERNEL_DRIVER (entier)

WIN32;E_WIN32_SHARE_PROCESS (entier)

WIN32;E_RUNS_IN_SYSTEM_PROCESS (entier)

Table des matières
win32_create_service -- Crée une nouvelle entrée pour service dans la base de données SCM
win32_delete_service -- Supprime une entrée de service de la base de données SCM
win32_get_last_control_message -- Retourne le dernier message de contrôle qui a été envoyé à ce service
win32_query_service_status -- Questionne le statut d'un service
win32_set_service_status -- Met à jour le statut d'un service
win32_start_service_ctrl_dispatcher -- Enregistre un script avec SCM, alors il peut être interprété en tant que service avec le nom donné
win32_start_service -- Démarre un service
win32_stop_service -- Arrête un service


Rechercher une fonction PHP

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

5 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Références

  1. Consulter le document html Langue du document: fr Manuel PHP : http://be2.php.net, fonctions win32service

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

 

Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-3818
Document créé le 21/09/06 00:55, dernière modification le Vendredi 17 Juin 2011, 12:12
Source du document imprimé : http://www.gaudry.be/php-rf-ref.win32service.html Document affiché 2 fois ce mois de Juin.
St.Gaudry©07.01.02
Outils (masquer)
||
Recherche (afficher)
Recherche :

Utilisateur (masquer)
Navigation (masquer)
Apparence (afficher)
Stats (afficher)
15832 documents
452 astuces.
549 niouzes.
3099 definitions.
447 membres.
8115 messages.

Document genere en :
0,24 seconde

Mises à jour :
Mises à jour du site
Citation (masquer)
Soit A un succès dans la vie. Alors A = x + y + z, où x = travailler, y = s'amuser, z = se taire.

Albert Einstein [Extrait du magazine The Observer]
 
l'infobrol
Nous sommes le Dimanche 03 Juin 2012, 06:46, toutes les heures sont au format GMT+1.00 Heure, heure d'été (+1)