(PECL win32service SVN)
win32_create_service — Crea una nueva entrada de servicio en la base de datos del ACS
Una matriz con los detalles del servicio:
El nombre corto del servicio. Éste es el nombre que se debe usar para controlar el servicio utilizando el comando net. El servicio debe ser único (dos servicios no pueden compartir el mismo nombre), y lo ideal sería evitar que el nombre contenga espacios.
El nombre para mostrar del servicio. Éste es el nombre que se verá en la Aplicación de Servicios.
La descripción larga del servicio. Ésta es la descripción que verá en el Services Applet.
El nombre de la cuenta de usuario bajo la cuál se quiere ejecutar el servicio. Si se omite, el servicio se ejecutará como la cuenta LocalSystem. Si se especifica el nombre de usuario, también se debe proporcionar una contraseña.
La contraseña que se corresponde con user.
La ruta completa de módulo ejecutable que será lanzado cuando el servicio es iniciado. Si se omite, se usará la ruta del proceso de PHP actual.
Parámetros de línea de comandos a pasar al servicio cuando se inicia. Si quiere ejecutar un script de PHP como un servicio, el primer parámetro debería ser la ruta completa del script de PHP que intenta ejecutar. Si el nombre del script o la ruta contiene espacios encierre la ruta completa del script PHP con ".
Controla el orden de carga. Ésto aún no está completamente soportado.
Establece el tipo de servicio. Si se omite, el valor por defecto es WIN32_SERVICE_WIN32_OWN_PROCESS. No cambie esto a menos que sepa lo que está haciendo.
Especifica cómo debería iniciarse el servicio. Por defecto es WIN32_SERVICE_AUTO_START lo que significa que el servicio será lanzado cuando se encienda la máquina.
Informa al ACS qué debería hacer cuando detecta un problema con el servicio. Por defecto es WIN32_SERVER_ERROR_IGNORE. El cambio de este valor no está aún soportado completamente.
Si delayed_start está establecido a TRUE, informará al SCM que este servicio debería ser iniciado después que otros servicios con autoinicio, más una pequeña demora.
Cualquier servicio puede ser marcado como un servicio con autoinicio demorado; sin embargo este ajuste no tiene efecto a menos que el parámetro start_type del servicio sea WIN32_SERVICE_AUTO_START.
Este ajuste sólo es aplicable en Windows Vista y Windows Server 2008 o superior.
El nombre opcional de la máquina en la que quiere crear el servicio. Si se omite, se usará la máquina local.
Returns WIN32_NO_ERROR on success, FALSE if there is a problem with the parameters or a Win32 Error Code on failure.
Example #1 Un ejemplo de win32_create_service()
Crear un servicio con el nombre abreviado'dummyphp'.
<?php
$x = win32_create_service(array(
'service' => 'dummyphp', # el nombre de su servicio
'display' => 'ejemplo de servicio PHP', # descripción abreviada
'description' => 'Este es un servicio de Windows creado usando PHP.', # descripción larga
'params' => '"' . __FILE__ . '" run', # ruta del script y parámetros
));
debug_zval_dump($x);
?>