1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-23 23:12:09 +01:00

add translate new page win32service (#147)

* add translate new page win32service

* Reviewed

* add translate new page win32service
This commit is contained in:
Philippe DELENTE
2025-03-09 15:22:15 +01:00
committed by GitHub
parent ca81dd0e77
commit 099e6e2205
35 changed files with 5345 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<book xml:id="book.win32service" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<?phpdoc extension-membership="pecl" ?>
<title>win32service</title>
<!-- {{{ preface -->
<preface xml:id="intro.win32service">
&reftitle.intro;
<para>
La extensión win32service es una extensión específica de Windows que
permite a PHP comunicarse con la Gestión de Control de Servicio para
iniciar, detener, registrar o eliminar servicios, y permite también
que los scripts PHP se ejecuten como servicio.
</para>
</preface>
<!-- }}} -->
&reference.win32service.setup;
&reference.win32service.constants;
&reference.win32service.win32serviceexception;
&reference.win32service.win32servicerightinfo;
&reference.win32service.examples;
&reference.win32service.reference;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: a56106f69198dfe88c6084593c78a71c26b24353 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<chapter xml:id="win32service.examples" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.examples;
<para>
<example>
<title>Registrar un script PHP para ejecutar como servicio</title>
<programlisting role="php">
<![CDATA[
<?php
win32_create_service(array(
'service' => 'dummyphp', # nombre del servicio
'display' => 'sample dummy PHP service', # descripción corta
'description' => 'This is a dummy Windows service created using PHP.', # descripción larga
'params' => '"' . __FILE__ . '" run', # ruta hacia el script y argumentos
));
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Eliminar un servicio</title>
<programlisting role="php">
<![CDATA[
<?php
win32_delete_service('dummyphp');
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Ejecutar un servicio</title>
<programlisting role="php">
<![CDATA[
<?php
if ($argv[1] == 'run') {
win32_start_service_ctrl_dispatcher('dummyphp');
while (WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {
# realizar su trabajo aquí.
# intente no tomar más de 30 segundos antes de volver al
# inicio del ciclo
}
}
?>
]]>
</programlisting>
</example>
</para>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: a9f34c2481abb11fdc8ac5cb750164829112ec96 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-add-right-access-service" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_add_right_access_service</refname>
<refpurpose>Añade los derechos de acceso para un usuario al servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_add_right_access_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam><type>string</type><parameter>username</parameter></methodparam>
<methodparam><type>int</type><parameter>right</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Añade los derechos de acceso para <parameter>username</parameter> en el servicio <parameter>servicename</parameter>.
Se requieren privilegios administrativos para que esto tenga éxito.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre del servicio al que se añadirán los derechos de acceso.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>username</parameter></term>
<listitem>
<para>
Se añaden los derechos de acceso para <parameter>username</parameter>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>right</parameter></term>
<listitem>
<para>
Los derechos autorizados para <parameter>username</parameter>.
Las <link linkend="win32service.constants.rights">constantes</link> se utilizan para definir este valor.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina en la que se desea crear un servicio.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un objeto <classname>Win32Service\RightInfo</classname>.
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro <parameter>service</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro <parameter>username</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_read_all_rights_access_service</function></member>
<member><function>win32_read_rights_access_service</function></member>
<member><function>win32_remove_right_access_service</function></member>
<member><link linkend="win32service.constants.rights">Constantes de permisos Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,109 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-add-service-env-var" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_add_service_env_var</refname>
<refpurpose>Añade una variable de entorno personalizada al servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_add_service_env_var</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam><type>string</type><parameter>varname</parameter></methodparam>
<methodparam><type>string</type><parameter>value</parameter></methodparam>
</methodsynopsis>
<para>
Añade una variable de entorno personalizada <parameter>varname</parameter> al servicio <parameter>servicename</parameter>.
Esta función solo funciona para la máquina local. Se requieren privilegios administrativos para que esto tenga éxito.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre del servicio al que se añadirá la variable de entorno.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>varname</parameter></term>
<listitem>
<para>
El nombre de la variable de entorno.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>value</parameter></term>
<listitem>
<para>
El valor de la variable de entorno.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si la
valor del parámetro <parameter>service</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si la
valor del parámetro <parameter>varname</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_get_service_env_vars</function></member>
<member><function>win32_remove_service_env_var</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,147 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-continue-service" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_continue_service</refname>
<refpurpose>Reanuda un servicio en pausa</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_continue_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Reanuda un servicio en pausa. Se requieren privilegios de administrador o
una cuenta con los derechos adecuados definidos en el ACL del servicio.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre corto del servicio.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
Nombre de la máquina (opcional). Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1>
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>servicename</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un parámetro es inválido,
antes se devolvía &false;.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes se devolvía un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>void</type>, antes era <type>mixed</type>.
</entry>
</row>
<row>
<entry>PECL win32service 0.3.0</entry>
<entry>
Esta función ya no requiere una cuenta de administrador si el ACL
está definido para otra cuenta.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_start_service</function></member>
<member><function>win32_stop_service</function></member>
<member><function>win32_pause_service</function></member>
<member><function>win32_send_custom_control</function></member>
<member>Los <link linkend="win32service.constants.errors">códigos de error Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,509 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-create-service" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_create_service</refname>
<refpurpose>Crea una nueva entrada para servicio en la base de datos SCM</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_create_service</methodname>
<methodparam><type>array</type><parameter>details</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Intenta añadir un servicio en la base de datos SCM. Se necesitan privilegios
de administrador para que esto tenga éxito.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>details</parameter></term>
<listitem>
<para>
Un array de detalles del servicio:
<variablelist>
<varlistentry>
<term><parameter>service</parameter></term>
<listitem>
<para>
El nombre corto del servicio. Este es el nombre que se utilizará
para controlar el servicio utilizando el comando
<literal>net</literal>. El servicio debe ser único (dos servicios
no pueden compartir el mismo nombre), e idealmente, debería evitar
tener espacios en su nombre.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>display</parameter></term>
<listitem>
<para>El nombre de visualización del servicio. Este es el nombre que se verá
en la Applet Servicios.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>description</parameter></term>
<listitem>
<para>
La descripción larga del servicio.
Esta es la descripción que se verá en la Applet de Servicios.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>user</parameter></term>
<listitem>
<para>
El nombre de usuario bajo el cual se desea que el servicio se ejecute. Si se omite, el servicio funcionará como
LocalSystem. Si se especifica el nombre de usuario, también se debe proporcionar una contraseña.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>password</parameter></term>
<listitem>
<para>
La contraseña que corresponde a <parameter>user</parameter>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>path</parameter></term>
<listitem>
<para>
La ruta completa al módulo ejecutable que se iniciará cuando el
servicio se inicie. Si se omite, se utilizará la ruta del proceso actual de
PHP.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>params</parameter></term>
<listitem>
<para>
Argumentos de comando a pasar al servicio cuando se inicie.
Si se desea ejecutar un script PHP como servicio, entonces
el primer argumento debería ser la ruta completa al script PHP
que se planea ejecutar. Si el nombre del script o la ruta
contienen espacios, entonces, rodee la ruta completa del script
PHP con <literal>"</literal>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>load_order</parameter></term>
<listitem>
<para>
Controla el load_order. Esto aún no está completamente soportado.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>svc_type</parameter></term>
<listitem>
<para>
Establece el tipo de servicio. Si se omite, el valor por omisión es
<constant>WIN32_SERVICE_WIN32_OWN_PROCESS</constant>. No se debe cambiar esto a menos que se sepa realmente lo que se está haciendo.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>start_type</parameter></term>
<listitem>
<para>
Especifica cómo debe iniciarse el servicio. El valor por omisión es <constant>WIN32_SERVIDE_AUTO_START</constant> lo que significa que el servicio se iniciará cuando la máquina se inicie.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>error_control</parameter></term>
<listitem>
<para>
Informa al SCM sobre qué hacer cuando detecte un problema con el servicio. El valor por omisión es
<constant>WIN32_SERVER_ERROR_IGNORE</constant>. Cambiar este valor aún no está completamente soportado.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>delayed_start</parameter></term>
<listitem>
<para>
Si <parameter>delayed_start</parameter> está establecido a
&true;, entonces informará al SCM que este servicio debe iniciarse después de los servicios iniciados automáticamente y un cierto retraso.
</para>
<para>
Cualquier servicio puede ser marcado como un servicio retrasado después del inicio automático; sin embargo, esta configuración no tiene ningún efecto mientras el parámetro <parameter>start_type</parameter>
del servicio valga <constant>WIN32_SERVICE_AUTO_START</constant>.
</para>
<para>
Esta configuración solo se aplica en Windows Vista y servidores Windows 2008 y posteriores.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>base_priority</parameter></term>
<listitem>
<para>
Para reducir el impacto en el uso del procesador, puede ser necesario establecer una prioridad más baja que la normal.
</para>
<para>
El parámetro <parameter>base_priority</parameter> puede ser establecido a
una de las constantes definidas en las
<link linkend="win32service.constants.basepriorities">clases de baja prioridad Win32</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>dependencies</parameter></term>
<listitem>
<para>
Para definir las dependencias del servicio, es necesario establecer este parámetro con la lista de nombres de servicios en un array.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>recovery_delay</parameter></term>
<listitem>
<para>
Este parámetro define el retraso entre el fallo y la ejecución de
la acción de recuperación. El valor es en milisegundos.
</para>
<para>
El valor por omisión es 60000.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>recovery_action_1</parameter></term>
<listitem>
<para>
La acción que se ejecutará en caso de la primera falla. La acción por omisión es <constant>WIN32_SC_ACTION_NONE</constant>.
</para>
<para>
El parámetro <parameter>recovery_action_1</parameter> puede ser establecido
con una de las constantes definidas en las
<link linkend="win32service.constants.recovery-action">Acciones de recuperación Win32</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>recovery_action_2</parameter></term>
<listitem>
<para>
La acción que se ejecutará en caso de la segunda falla. La acción por omisión es <constant>WIN32_SC_ACTION_NONE</constant>.
</para>
<para>
El parámetro <parameter>recovery_action_2</parameter> puede ser establecido
con una de las constantes definidas en las
<link linkend="win32service.constants.recovery-action">Acciones de recuperación Win32</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>recovery_action_3</parameter></term>
<listitem>
<para>
La acción que se ejecutará en caso de fallas subsiguientes. La acción por omisión es <constant>WIN32_SC_ACTION_NONE</constant>.
</para>
<para>
El parámetro <parameter>recovery_action_3</parameter> puede ser establecido
con una de las constantes definidas en las
<link linkend="win32service.constants.recovery-action">Acciones de recuperación Win32</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>recovery_reset_period</parameter></term>
<listitem>
<para>
El contador de fallas se reiniciará después del retraso definido
en este parámetro. El retraso se expresa en segundos.
</para>
<para>
El valor por omisión es <literal>86400</literal>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>recovery_enabled</parameter></term>
<listitem>
<para>
Establecer este parámetro a &true; para habilitar las opciones de recuperación, y &false;
para deshabilitarlas.
</para>
<para>
El valor por omisión es &false;
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>recovery_reboot_msg</parameter></term>
<listitem>
<para>
Añadir este parámetro para definir el mensaje registrado en el registro
de eventos de Windows antes del reinicio. Solo se utiliza si una
de las acciones está definida a
<constant>WIN32_SC_ACTION_REBOOT</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>recovery_command</parameter></term>
<listitem>
<para>
Añadir este parámetro para definir el comando a ejecutar cuando una
acción está definida a
<constant>WIN32_SC_ACTION_RUN_COMMAND</constant>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina en la que se desea crear el servicio.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>service</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>path</parameter> está omitido o vacío.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>svc_type</parameter> es incorrecto.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>start_type</parameter> es incorrecto.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>error_control</parameter> es incorrecto.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>base_priority</parameter> es incorrecto.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>recovery_delay</parameter> no está entre
0 y PHP_INT_MAX.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>recovery_action_1</parameter> es incorrecto.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>recovery_action_2</parameter> es incorrecto.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>recovery_action_3</parameter> es incorrecto.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del parámetro
<parameter>recovery_reset_period</parameter> no está entre
0 y PHP_INT_MAX.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Se lanzará una <classname>ValueError</classname> si un parámetro es inválido,
antes &false; era devuelto.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era devuelto.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno ahora es <type>void</type>, antes era <type>mixed</type>.
</entry>
</row>
<row>
<entry>PECL win32service 0.4.0</entry>
<entry>
Los parámetros <parameter>dependencies</parameter>, <parameter>recovery_delay</parameter>,
<parameter>recovery_action_1</parameter>, <parameter>recovery_action_2</parameter>,
<parameter>recovery_action_3</parameter>, <parameter>recovery_reset_period</parameter>,
<parameter>recovery_enabled</parameter>, <parameter>recovery_reboot_msg</parameter>
y <parameter>recovery_command</parameter> han sido añadidos.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo con <function>win32_create_service</function></title>
<para>
Crea un servicio cuyo nombre corto es 'dummyphp'.
</para>
<programlisting role="php">
<![CDATA[
<?php
\$x = win32_create_service(array(
'service' => 'dummyphp', // el nombre del servicio
'display' => 'ejemplo de servicio PHP ficticio', // la descripción corta
'description' => 'Este es un servicio Windows creado utilizando PHP', // la descripción larga
'params' => '"' . __FILE__ . '" run', // ruta al script así como los argumentos
));
debug_zval_dump(\$x);
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Un ejemplo <function>win32_create_service</function> con dependencias</title>
<para>
Crea un servicio cuyo nombre corto es 'dummyphp' con dependencias.
</para>
<programlisting role="php">
<![CDATA[
<?php
\$x = win32_create_service(array(
'service' => 'dummyphp', // El nombre del servicio
'display' => 'ejemplo de servicio PHP ficticio', // Una descripción corta
'description' => 'Este es un servicio Windows creado utilizando PHP.', // Una descripción larga
'params' => '"' . __FILE__ . '" run', // ruta al script así como los argumentos
'dependencies' => array("Netman"), // La lista de dependencias
));
debug_zval_dump(\$x);
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Ejemplo de <function>win32_create_service</function> con opciones de recuperación</title>
<para>
Crea un servicio cuyo nombre corto es 'dummyphp' con opciones de recuperación.
</para>
<programlisting role="php">
<![CDATA[
<?php
\$x = win32_create_service(array(
'service' => 'dummyphp', // El nombre del servicio
'display' => 'ejemplo de servicio PHP ficticio', // Una descripción corta
'description' => 'Este es un servicio Windows creado utilizando PHP.', // Una descripción larga
'params' => '"' . __FILE__ . '" run', // ruta al script así como los argumentos
'recovery_delay' => 120000, // Las acciones de recuperación se ejecutarán después de 2 minutos
'recovery_action_1' => WIN32_SC_ACTION_RESTART, // Primera falla, reiniciar el servicio
'recovery_action_2' => WIN32_SC_ACTION_RUN_COMMAND, // Segunda falla, ejecutar un comando
'recovery_action_3' => WIN32_SC_ACTION_NONE, // Fallas subsiguientes, no hacer nada
'recovery_reset_period' => 86400, // Reiniciar el contador de fallas después de 1 día (86400 minutos)
'recovery_enabled' => true, // Habilitar las opciones de recuperación
'recovery_reboot_msg' => null, // No definir un mensaje de reinicio, no es útil.
'recovery_command' => "c:\clean-service.bat", // Cuando la acción es WIN32_SC_ACTION_RUN_COMMAND, ejecutar este comando.
));
debug_zval_dump(\$x);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_delete_service</function></member>
<member><link linkend="win32service.constants.basepriorities">Las clases de baja prioridad Win32</link></member>
<member><link linkend="win32service.constants.recovery-action">Las acciones de recuperación Win32</link></member>
<member><link linkend="win32service.constants.errors">Los códigos de error Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,165 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-delete-service" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_delete_service</refname>
<refpurpose>Elimina una entrada de servicio de la base de datos SCM</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_delete_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Intenta eliminar un servicio de la base de datos SCM. Los privilegios
de administrador son necesarios para que esta función tenga éxito.
</para>
<para>
Esta función solo marca el servicio para eliminación. Si otros
procesos (como el Applet Services) están abiertos, entonces la eliminación será
pospuesta hasta que estas aplicaciones se cierren. Si un servicio está marcado para eliminación, otros intentos de eliminación fallarán y los intentos de crear un nuevo servicio con ese nombre también fallarán.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre corto del servicio.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>servicename</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
antes &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>void</type>, antes era <type>mixed</type>.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo con <function>win32_delete_service</function></title>
<para>
Elimina el servicio dummyphp.
</para>
<programlisting role="php">
<![CDATA[
<?php
win32_delete_service('dummyphp');
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_create_service</function></member>
<member><link linkend="win32service.constants.errors">Los códigos de error Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,149 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 4d72f13eaf9e06715ae68eac72aa3fd6ae83eb78 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-get-last-control-message" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_get_last_control_message</refname>
<refpurpose>Devuelve el último mensaje de control que ha sido enviado a este servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>win32_get_last_control_message</methodname>
<void/>
</methodsynopsis>
<para>
Devuelve el código de control que ha sido enviado por última vez a este proceso de
servicio. Cuando funciona como servicio, debe verificar periódicamente para determinar si el servicio debe ser detenido.
</para>
<caution>
<para>
Desde la versión 0.2.0, esta función solo funciona en línea de
comandos ("cli" SAPI). Está deshabilitada en otros casos.
</para>
</caution>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve una constante de control que será una de
<link linkend="win32service.constants.servicecontrol">las
constantes de control de mensajes de servicio Win32Service</link> :
<constant>WIN32_SERVICE_CONTROL_CONTINUE</constant>,
<constant>WIN32_SERVICE_CONTROL_DEVICEEVENT</constant>,
<constant>WIN32_SERVICE_CONTROL_HARDWAREPROFILECHANGE</constant>,
<constant>WIN32_SERVICE_CONTROL_INTERROGATE</constant>,
<constant>WIN32_SERVICE_CONTROL_NETBINDADD</constant>,
<constant>WIN32_SERVICE_CONTROL_NETBINDDISABLE</constant>,
<constant>WIN32_SERVICE_CONTROL_NETBINDENABLE</constant>,
<constant>WIN32_SERVICE_CONTROL_NETBINDREMOVE</constant>,
<constant>WIN32_SERVICE_CONTROL_PARAMCHANGE</constant>,
<constant>WIN32_SERVICE_CONTROL_PAUSE</constant>,
<constant>WIN32_SERVICE_CONTROL_POWEREVENT</constant>,
<constant>WIN32_SERVICE_CONTROL_PRESHUTDOWN</constant>,
<constant>WIN32_SERVICE_CONTROL_SESSIONCHANGE</constant>,
<constant>WIN32_SERVICE_CONTROL_SHUTDOWN</constant>,
<constant>WIN32_SERVICE_CONTROL_STOP</constant>.
</para>
<para>
Si el valor está entre 128 y 255, el código de control es personalizado.
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Antes de la versión 1.0.0, si esta función se utiliza fuera del SAPI <literal>"cli"</literal>, se emitirá
un error <constant>E_ERROR</constant>.
</para>
<para>
A partir de la versión 1.0.0, lanzará una
<classname>Win32ServiceException</classname> si el SAPI no es
<literal>"cli"</literal>
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
antes &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 0.2.0</entry>
<entry>
Esta función solo funciona en línea de
comandos.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_start_service_ctrl_dispatcher</function></member>
<member><function>win32_set_service_status</function></member>
<member><function>win32_set_service_exit_mode</function></member>
<member><function>win32_set_service_exit_code</function></member>
<member><link linkend="win32service.constants.servicecontrol">las constantes de control de mensajes de servicio Win32Service</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-get-service-env-vars" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_get_service_env_vars</refname>
<refpurpose>Lee todas las variables de entorno personalizadas del servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>win32_get_service_env_vars</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
</methodsynopsis>
<para>
Lee todas las variables de entorno personalizadas del servicio <parameter>servicename</parameter>.
Esta función solo funciona para la máquina local. Los privilegios administrativos son necesarios para que esto tenga éxito.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre del servicio para leer las variables de entorno.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un &array; con el nombre de la variable como clave y el valor de la variable como valor.
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>service</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_add_service_env_var</function></member>
<member><function>win32_remove_service_env_var</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,150 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-pause-service" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_pause_service</refname>
<refpurpose>Pone en pausa un servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_pause_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Pone en pausa un servicio. Se requieren privilegios de administrador o
una cuenta con los derechos adecuados definidos en la ACL del servicio.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre corto del servicio.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
Nombre de la máquina (opcional). Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1>
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>servicename</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
antes &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>void</type>, antes era <type>mixed</type>.
</entry>
</row>
<row>
<entry>PECL win32service 0.3.0</entry>
<entry>
Esta función ya no requiere una cuenta de administrador si la ACL
está definida para otra cuenta.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_start_service</function></member>
<member><function>win32_stop_service</function></member>
<member><function>win32_continue_service</function></member>
<member><function>win32_send_custom_control</function></member>
<member>Los <link linkend="win32service.constants.errors">códigos de error Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,233 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-query-service-status" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_query_service_status</refname>
<refpurpose>Consulta el estado de un servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>win32_query_service_status</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Consulta el estado actual de un servicio, devolviendo un array
de información.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre corto del servicio.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un array que contiene la siguiente información
en caso de éxito.
</para>
<para>
Antes de la versión 1.0.0&win32service.false.error;
</para>
<para>
<variablelist>
<varlistentry>
<term><parameter>ServiceType</parameter></term>
<listitem>
<para>
El dwServiceType. Consulte las
<link linkend="win32service.constants.servicetype">máscaras de tipo de
servicio Win32Service</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>CurrentState</parameter></term>
<listitem>
<para>
El dwCurrentState. Consulte las
<link linkend="win32service.constants.servicestatus">constantes de estado
de los servicios Win32Service</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>ControlsAccepted</parameter></term>
<listitem>
<para>
Qué controles de servicio son aceptados por el servicio. Consulte
las <link linkend="win32service.constants.controlsaccepted">máscaras
aceptadas para los mensajes de control de servicio Win32Service</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>Win32ExitCode</parameter></term>
<listitem>
<para>
Si el servicio termina, el código de retorno del proceso. Este valor es igual
a <constant>WIN32_ERROR_SERVICE_SPECIFIC_ERROR</constant> si el modo de salida no es
correcto. Consulte
<link linkend="win32service.constants.errors">códigos de error Win32Service</link>
y <function>win32_set_service_exit_mode</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>ServiceSpecificExitCode</parameter></term>
<listitem>
<para>
Si el servicio termina con una condición de error, el código específico del
servicio que se registrará en el registro de eventos es visible aquí.
Este valor es igual al valor definido por
<function>win32_set_service_exit_code</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>CheckPoint</parameter></term>
<listitem>
<para>
Si el servicio se detiene, mantiene el número actual de punto de control.
Esto es utilizado por SCM como una especie de latido para detectar un proceso de
servicio detenido. El valor del punto de control se interpreta mejor en
conjunción con el valor WaitHint.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>WaitHint</parameter></term>
<listitem>
<para>
Si el servicio se detiene, establecerá un WaitHint a un valor de punto de
control que indique la ejecución al 100%. Esto puede ser utilizado para
implementar una barra de progreso.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>ProcessId</parameter></term>
<listitem>
<para>
El identificador de proceso de ventana. Si es 0, el proceso no está en ejecución.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>ServiceFlags</parameter></term>
<listitem>
<para>
El dwServiceFlags. Consulte las
<link linkend="win32service.constants.serviceflag">constantes
utilizadas para las banderas de los servicios Win32Service</link>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>servicename</parameter> está vacío.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
antes &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>array</type>, antes era <type>mixed</type>.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member>Las <link linkend="win32service.constants">constantes Win32Service predefinidas</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,99 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 3738e1b83e083053626e0660a35c9dbda9c8d657 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-read-all-rights-access-service" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_read_all_rights_access_service</refname>
<refpurpose>Lee todos los derechos de acceso al servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>win32_read_all_rights_access_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Lee todos los derechos de acceso al servicio <parameter>servicename</parameter>.
Se requieren privilegios administrativos para que esto tenga éxito.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre del servicio para leer los derechos de acceso.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina en la que se desea crear un servicio.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un &array; de <classname>Win32Service\RightInfo</classname>
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>service</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_read_rights_access_service</function></member>
<member><function>win32_add_right_access_service</function></member>
<member><function>win32_remove_right_access_service</function></member>
<member><link linkend="win32service.constants.rights">Constantes de permisos Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,112 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 3738e1b83e083053626e0660a35c9dbda9c8d657 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-read-right-access-service" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_read_right_access_service</refname>
<refpurpose>Lee los derechos de acceso al servicio para un usuario</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>Win32Service\RightInfo</type><methodname>win32_read_right_access_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam><type>string</type><parameter>username</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Lee los derechos de acceso para <parameter>username</parameter> en el servicio <parameter>servicename</parameter>.
Se requieren privilegios administrativos para que esto tenga éxito.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre del servicio para leer los derechos de acceso.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>username</parameter></term>
<listitem>
<para>
Lee los derechos de acceso para <parameter>username</parameter>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina en la que se desea crear un servicio.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un objeto <classname>Win32Service\RightInfo</classname>.
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>service</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>username</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_read_all_rights_access_service</function></member>
<member><function>win32_add_right_access_service</function></member>
<member><function>win32_remove_right_access_service</function></member>
<member><link linkend="win32service.constants.rights">Constantes de permisos Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: a9f34c2481abb11fdc8ac5cb750164829112ec96 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-remove-right-access-service" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_remove_right_access_service</refname>
<refpurpose>Elimina los derechos de acceso para un usuario en el servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_remove_right_access_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam><type>string</type><parameter>username</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Elimina los derechos de acceso para <parameter>username</parameter> en el servicio <parameter>servicename</parameter>.
Se requieren privilegios administrativos para que esto tenga éxito.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre del servicio del que se eliminan los derechos de acceso.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>username</parameter></term>
<listitem>
<para>
Elimina los derechos de acceso para <parameter>username</parameter>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina en la que se desea crear un servicio.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>service</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>username</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_read_all_rights_access_service</function></member>
<member><function>win32_read_rights_access_service</function></member>
<member><function>win32_add_right_access_service</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,100 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-remove-service-env-var" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_remove_service_env_var</refname>
<refpurpose>Elimina una variable de entorno personalizada del servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_remove_service_env_var</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam><type>string</type><parameter>varname</parameter></methodparam>
</methodsynopsis>
<para>
Elimina una variable de entorno personalizada <parameter>varname</parameter> del servicio <parameter>servicename</parameter>.
Esta función solo funciona para la máquina local. Se requieren privilegios administrativos para que esto tenga éxito.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre del servicio del que se eliminará la variable de entorno.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>varname</parameter></term>
<listitem>
<para>
El nombre de la variable de entorno.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>service</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>varname</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_get_service_env_vars</function></member>
<member><function>win32_add_service_env_var</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,157 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-send-custom-control" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_send_custom_control</refname>
<refpurpose>Envía un control personalizado al servicio</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis role="procedural">
<type>void</type><methodname>win32_send_custom_control</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam><type>int</type><parameter>control</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Consulte <link xlink:href="&url.microsoft.controlservice;">Microsoft ControlService function</link> para más detalles.
</para>
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre corto del servicio.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>control</parameter></term>
<listitem>
<para>
El valor de control personalizado entre 128 y 255.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
Nombre de la máquina opcional. Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Antes de la versión 1.0.0, si el valor de control no está entre 128 y 255, esta función emite
un error de nivel <constant>E_ERROR</constant>.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>servicename</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>control</parameter> no está entre 128 y 255.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
antes &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>void</type>, antes era <type>mixed</type>.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><function>win32_start_service</function></member>
<member><function>win32_stop_service</function></member>
<member><function>win32_pause_service</function></member>
<member><function>win32_continue_service</function></member>
<member><link linkend="win32service.constants.errors">Códigos de error Win32</link></member>
</simplelist>
</refsect1><!-- }}} -->
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 05568582247276cc2ee7b2b87f7df7d602e566c0 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-set-service-exit-code" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_set_service_exit_code</refname>
<refpurpose>Define o devuelve el código de salida para el servicio en ejecución</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis role="procedural">
<type>int</type><methodname>win32_set_service_exit_code</methodname>
<methodparam choice="opt"><type>int</type><parameter>exitCode</parameter><initializer>1</initializer></methodparam>
</methodsynopsis>
<para>
Cambia o devuelve el código de salida. El código de salida se utiliza únicamente
si el modo de salida no es correcto.
Si el valor no es cero, la configuración de recuperación puede ser utilizada
después del fallo del servicio. Consulte <link xlink:href="&url.microsoft.return.code;">los
códigos de error del sistema Microsoft</link> para más detalles.
</para>
<caution>
<para>
Esta función solo funciona en el SAPI "cli". En otros SAPI, esta
función está deshabilitada.
</para>
</caution>
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>exitCode</parameter></term>
<listitem>
<para>
El código de retorno utilizado a la salida.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve el código de salida actual o el anterior.
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Antes de la versión 1.0.0, si esta función se utiliza fuera del SAPI <literal>"cli"</literal>, se emitirá
un error <constant>E_ERROR</constant>.
</para>
<para>
A partir de la versión 1.0.0, lanzará una
<classname>Win32ServiceException</classname> si el SAPI no es
<literal>"cli"</literal>
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
antes &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><function>win32_start_service_ctrl_dispatcher</function></member>
<member><function>win32_set_service_status</function></member>
<member><function>win32_set_service_exit_mode</function></member>
</simplelist>
</refsect1><!-- }}} -->
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,130 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 05568582247276cc2ee7b2b87f7df7d602e566c0 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-set-service-exit-mode" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_set_service_exit_mode</refname>
<refpurpose>Define o devuelve el modo de salida para el servicio en ejecución</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis role="procedural">
<type>bool</type><methodname>win32_set_service_exit_mode</methodname>
<methodparam choice="opt"><type>bool</type><parameter>gracefulMode</parameter><initializer>true</initializer></methodparam>
</methodsynopsis>
<para>
Si se proporciona el argumento <parameter>gracefulMode</parameter>, se modifica el modo de
salida. Cuando el modo de salida no es correcto, el código de salida utilizado puede ser definido con la función
<function>win32_set_service_exit_code</function>.
</para>
<caution>
<para>
Esta función solo funciona en el SAPI "cli". En otros SAPI, esta
función está deshabilitada.
</para>
</caution>
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>gracefulMode</parameter></term>
<listitem>
<para>
&true; para la salida correcta. &false; para la salida con error.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve el modo de salida actual o anterior.
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Antes de la versión 1.0.0, si esta función se utiliza fuera del SAPI <literal>"cli"</literal>, se emitirá
un error <constant>E_ERROR</constant>.
</para>
<para>
A partir de la versión 1.0.0, lanzará una
<classname>Win32ServiceException</classname> si el SAPI no es
<literal>"cli"</literal>
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
antes &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
antes un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><function>win32_start_service_ctrl_dispatcher</function></member>
<member><function>win32_set_service_status</function></member>
<member><function>win32_set_service_exit_code</function></member>
</simplelist>
</refsect1><!-- }}} -->
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,127 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-set-service-pause-resume-state" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>win32_set_service_pause_resume_state</refname>
<refpurpose>Define o devuelve la capacidad de pausa/reanudación para el servicio en ejecución</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis role="procedural">
<type>bool</type><methodname>win32_set_service_pause_resume_state</methodname>
<methodparam choice="opt"><type>bool</type><parameter>state</parameter><initializer>true</initializer></methodparam>
</methodsynopsis>
<para>
Si se proporciona el argumento <parameter>state</parameter>, se modifica la capacidad de pausa/reanudación.
</para>
<caution>
<para>
Esta función solo funciona en el SAPI "cli" y en el contexto de ejecución del servicio de Windows. En otros SAPI,
esta función está deshabilitada.
</para>
</caution>
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>state</parameter></term>
<listitem>
<para>
&true; para habilitar la capacidad de pausa/reanudación del servicio. &false; para deshabilitar la capacidad de pausa/reanudación del servicio.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve el estado actual o anterior de la capacidad de pausa/reanudación.
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
A partir de la versión 1.0.0, si el SAPI no es <literal>"cli"</literal>, esta función emite un error de nivel
<constant>E_ERROR</constant>.
</para>
<para>
Desde la versión 1.0.0, lanzará una
<classname>Win32ServiceException</classname> si el SAPI no es
<literal>"cli"</literal>
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> sobre datos inválidos en los argumentos,
anteriormente &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
anteriormente un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">código de error Win32</link>
era retornado.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><function>win32_start_service_ctrl_dispatcher</function></member>
<member><function>win32_set_service_status</function></member>
<member><function>win32_set_service_exit_code</function></member>
</simplelist>
</refsect1><!-- }}} -->
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,178 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 05568582247276cc2ee7b2b87f7df7d602e566c0 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-set-service-status" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_set_service_status</refname>
<refpurpose>Actualiza el estado de un servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_set_service_status</methodname>
<methodparam><type>int</type><parameter>status</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>checkpoint</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Informa al SCM del estado actual de un servicio en ejecución. Esta llamada
solo es válida para un proceso de servicio en ejecución.
</para>
<caution>
<para>
Desde la versión 0.2.0, esta función solo funciona en línea de
comandos ("cli" SAPI). Está deshabilitada en otros casos.
</para>
</caution>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>status</parameter></term>
<listitem>
<para>
El código de estado del servicio, uno de
<constant>WIN32_SERVICE_RUNNING</constant>,
<constant>WIN32_SERVICE_STOPPED</constant>,
<constant>WIN32_SERVICE_STOP_PENDING</constant>,
<constant>WIN32_SERVICE_START_PENDING</constant>,
<constant>WIN32_SERVICE_CONTINUE_PENDING</constant>,
<constant>WIN32_SERVICE_PAUSE_PENDING</constant>,
<constant>WIN32_SERVICE_PAUSED</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>checkpoint</parameter></term>
<listitem>
<para>
Este valor será incrementado periódicamente por el servicio
para reportar su progreso durante las operaciones de inicio, detención,
pausa o reanudación. Por ejemplo, el servicio incrementará este valor
cuando haya completado cada paso de su inicialización durante el inicio.
</para>
<para>
<parameter>checkpoint</parameter> solo es válido cuando
<parameter>status</parameter> es una de las siguientes constantes:
<constant>WIN32_SERVICE_STOP_PENDING</constant>,
<constant>WIN32_SERVICE_START_PENDING</constant>,
<constant>WIN32_SERVICE_CONTINUE_PENDING</constant> o
<constant>WIN32_SERVICE_PAUSE_PENDING</constant>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1>
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Antes de la versión 1.0.0, si esta función se utiliza fuera del SAPI <literal>"cli"</literal>, se emitirá
un error <constant>E_ERROR</constant>.
</para>
<para>
A partir de la versión 1.0.0, lanzará una
<classname>Win32ServiceException</classname> si el SAPI no es
<literal>"cli"</literal>
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
anteriormente &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
anteriormente un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>void</type>, anteriormente era <type>mixed</type>.
</entry>
</row>
<row>
<entry>PECL win32service 0.2.0</entry>
<entry>
Esta función solo funciona en línea de
comandos ("cli" SAPI).
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_start_service_ctrl_dispatcher</function></member>
<member><function>win32_get_last_control_message</function></member>
<member><function>win32_set_service_exit_mode</function></member>
<member><function>win32_set_service_exit_code</function></member>
<member>Las <link linkend="win32service.constants.servicestatus">constantes de estado de los servicios Win32Service</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,212 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 4d72f13eaf9e06715ae68eac72aa3fd6ae83eb78 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-start-service-ctrl-dispatcher" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_start_service_ctrl_dispatcher</refname>
<refpurpose>Registra un script con SCM, por lo que puede ser interpretado como un servicio con el nombre dado</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_start_service_ctrl_dispatcher</methodname>
<methodparam><type>string</type><parameter>name</parameter></methodparam>
<methodparam choice="opt"><type>bool</type><parameter>gracefulMode</parameter><initializer>true</initializer></methodparam>
</methodsynopsis>
<para>
Cuando se ejecuta a través del Gestionador de Control de Servicio, un proceso de
servicio debe "registrarse" con él para establecer un servicio de supervisión y
comunicación eficiente. Esta función realiza el registro iniciando un hilo para
manejar las comunicaciones de bajo nivel con el Gestionador de Control de Servicio.
</para>
<para>
Una vez iniciado, el proceso del servicio debe hacer dos cosas. La primera es
informar al Service Control Manager que el servicio está en ejecución. La segunda
es llamar a la función <function>win32_set_service_status</function> con la constante
<constant>WIN32_SERVICE_RUNNING</constant>. Si necesita lanzar procesos largos antes
de que el servicio se inicie, puede usar la constante
<constant>WIN32_SERVICE_START_PENDING</constant>. La segunda es continuar
verificando con el Service Control Manager para determinar si el servicio se
detiene o no. Esto implica llamar periódicamente a la función
<function>win32_get_last_control_message</function> y tratar el código devuelto.
</para>
<caution>
<para>
Desde la versión 0.2.0, esta función solo funciona en línea de
comandos. Está deshabilitada en otros casos.
</para>
</caution>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>name</parameter></term>
<listitem>
<para>
El nombre corto del servicio, como se registra con
<function>win32_create_service</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>gracefulMode</parameter></term>
<listitem>
<para>
&true; para la salida correcta. &false; para la salida con error. Consulte
<function>win32_set_service_exit_mode</function> para más detalles.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Antes de la versión 1.0.0, si esta función se utiliza fuera del SAPI <literal>"cli"</literal>, se emitirá
un error <constant>E_ERROR</constant>.
</para>
<para>
A partir de la versión 1.0.0, lanzará una
<classname>Win32ServiceException</classname> si el SAPI no es
<literal>"cli"</literal>
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
anteriormente &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
anteriormente un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>void</type>, anteriormente era <type>mixed</type>.
</entry>
</row>
<row>
<entry>PECL win32service 0.4.0</entry>
<entry>
Se añadió el argumento <parameter>gracefulMode</parameter>.
</entry>
</row>
<row>
<entry>PECL win32service 0.2.0</entry>
<entry>
Esta función solo funciona en línea de
comandos ("cli" SAPI).
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo con <function>win32_start_service_ctrl_dispatcher</function></title>
<para>
Verifica si el servicio funciona bajo SCM.
</para>
<programlisting role="php">
<![CDATA[
<?php
if (!win32_start_service_ctrl_dispatcher('dummyphp')) {
die("Probablemente no estoy funcionando bajo el Gestionador de Control de Servicio");
}
win32_set_service_status(WIN32_SERVICE_START_PENDING);
// Algunos procesos largos a recuperar mientras el servicio funciona.
win32_set_service_status(WIN32_SERVICE_RUNNING);
while (WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {
# Realice su trabajo aquí.
# Intente no tomar más de 30 segundos antes de devolver.
}
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_set_service_status</function></member>
<member><function>win32_get_last_control_message</function></member>
<member><function>win32_set_service_exit_mode</function></member>
<member><function>win32_set_service_exit_code</function></member>
<member>Los <link linkend="win32service.constants.errors">códigos de error Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,151 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-start-service" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_start_service</refname>
<refpurpose>Inicia un servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_start_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Intenta iniciar el servicio nombrado. Se requieren privilegios de administrador o
una cuenta con los derechos adecuados definidos en la ACL del servicio.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre corto del servicio.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1>
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Se lanzará una <classname>ValueError</classname> si el valor del argumento
<parameter>servicename</parameter> está vacío.
</para>
<para>
Se lanzará una <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>ValueError</classname> si un argumento es inválido,
anteriormente &false; era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará una <classname>Win32ServiceException</classname> en caso de error,
anteriormente un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
era retornado.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>void</type>, anteriormente era <type>mixed</type>.
</entry>
</row>
<row>
<entry>PECL win32service 0.3.0</entry>
<entry>
Esta función ya no requiere una cuenta de administrador si la ACL
está definida para otra cuenta.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_stop_service</function></member>
<member><function>win32_pause_service</function></member>
<member><function>win32_continue_service</function></member>
<member><function>win32_send_custom_control</function></member>
<member><link linkend="win32service.constants.errors">Códigos de error Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,150 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 95fe2d7de6477ae5e28ae2e6f11eb4025f427b4f Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="function.win32-stop-service" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>win32_stop_service</refname>
<refpurpose>Detiene un servicio</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>win32_stop_service</methodname>
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>machine</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Detiene un servicio nombrado. Requiere privilegios de administrador o
una cuenta con los derechos apropiados definidos en el ACL del servicio.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>servicename</parameter></term>
<listitem>
<para>
El nombre corto del servicio.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>machine</parameter></term>
<listitem>
<para>
El nombre opcional de la máquina.
Si se omite, se utilizará la máquina local.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
<para>
Antes de la versión 1.0.0, &win32service.noerror.false.error;
</para>
</refsect1>
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
Se lanzará un <classname>ValueError</classname> si el valor del parámetro
<parameter>servicename</parameter> está vacío.
</para>
<para>
Se lanzará un <classname>Win32ServiceException</classname> en caso de error.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody> <row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará un <classname>ValueError</classname> si un parámetro es inválido,
antes se retornaba &false;.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
Lanzará un <classname>Win32ServiceException</classname> en caso de error,
antes se retornaba un
<link xmlns="http://docbook.org/ns/docbook" linkend="win32service.constants.errors">Código de error Win32</link>
.
</entry>
</row>
<row>
<entry>PECL win32service 1.0.0</entry>
<entry>
El tipo de retorno es ahora <type>void</type>, antes era <type>mixed</type>.
</entry>
</row>
<row>
<entry>PECL win32service 0.3.0</entry>
<entry>
Esta función ya no requiere una cuenta de administrador si el ACL
está definido para otra cuenta.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>win32_start_service</function></member>
<member><function>win32_pause_service</function></member>
<member><function>win32_continue_service</function></member>
<member><function>win32_send_custom_control</function></member>
<member><link linkend="win32service.constants.errors">Códigos de error Win32</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<reference xml:id="ref.win32service" xmlns="http://docbook.org/ns/docbook">
<title>&Functions; win32service</title>
&reference.win32service.entities.functions;
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 48783163fcd8ebcc23329269d3e87d38003ea24e Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="win32service-rightinfo.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Win32Service\RightInfo::__construct</refname>
<refpurpose>Crear un nuevo RightInfo (no utilizado)</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>private</modifier> <methodname>Win32Service\RightInfo::__construct</methodname>
<void />
</methodsynopsis>
<para>
Los objetos <classname>Win32Service\RightInfo</classname> son retornados como
resultado de <function>win32_read_right_access_service</function>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>Win32Service\RightInfo::getRights</function></member>
<member><function>Win32Service\RightInfo::isGrantAccess</function></member>
<member><function>Win32Service\RightInfo::isDenyAccess</function></member>
<member><function>Win32Service\RightInfo::getFullUsername</function></member>
<member><function>Win32Service\RightInfo::getUsername</function></member>
<member><function>Win32Service\RightInfo::getDomain</function></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 48783163fcd8ebcc23329269d3e87d38003ea24e Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="win32service-rightinfo.get-domain" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Win32Service\RightInfo::getDomain</refname>
<refpurpose>Devuelve el dominio del usuario</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <type class="union"><type>null</type><type>string</type></type> <methodname>Win32Service\RightInfo::getDomain</methodname>
<void />
</methodsynopsis>
<para>
Devuelve el dominio del usuario.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve el nombre de dominio o &null; si no se encuentra ningún dominio (cuenta local o fallo en la resolución del GUID del usuario).
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>Win32Service\RightInfo::__construct</function></member>
<member><function>Win32Service\RightInfo::getRights</function></member>
<member><function>Win32Service\RightInfo::isGrantAccess</function></member>
<member><function>Win32Service\RightInfo::isDenyAccess</function></member>
<member><function>Win32Service\RightInfo::getFullUsername</function></member>
<member><function>Win32Service\RightInfo::getUsername</function></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 48783163fcd8ebcc23329269d3e87d38003ea24e Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="win32service-rightinfo.get-full-username" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Win32Service\RightInfo::getFullUsername</refname>
<refpurpose>Devuelve el dominio y el nombre de usuario</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <type class="union"><type>null</type><type>string</type></type> <methodname>Win32Service\RightInfo::getFullUsername</methodname>
<void />
</methodsynopsis>
<para>
Devuelve el dominio y el nombre de usuario separados por un anti-slash <literal>\</literal>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve el dominio y el nombre de usuario o el nombre de usuario si el dominio es <literal>null</literal> o &null; si no se encuentra ningún nombre de usuario.
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>Win32Service\RightInfo::__construct</function></member>
<member><function>Win32Service\RightInfo::getRights</function></member>
<member><function>Win32Service\RightInfo::isGrantAccess</function></member>
<member><function>Win32Service\RightInfo::isDenyAccess</function></member>
<member><function>Win32Service\RightInfo::getUsername</function></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 48783163fcd8ebcc23329269d3e87d38003ea24e Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="win32service-rightinfo.get-rights" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Win32Service\RightInfo::getRights</refname>
<refpurpose>Devuelve la lista de derechos</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <type>array</type> <methodname>Win32Service\RightInfo::getRights</methodname>
<void />
</methodsynopsis>
<para>
Devuelve la lista de derechos del usuario.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve la lista de derechos del usuario.
</para>
<para>
El array indexado es la máscara de bits del derecho representado por las <link linkend="win32service.constants.rights">constantes de permisos</link>.
</para>
<para>
El valor es una cadena con el nombre de la constante de Windows (sin el prefijo <literal>WIN32_</literal>).
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>Win32Service\RightInfo::__construct</function></member>
<member><function>Win32Service\RightInfo::isGrantAccess</function></member>
<member><function>Win32Service\RightInfo::isDenyAccess</function></member>
<member><function>Win32Service\RightInfo::getFullUsername</function></member>
<member><function>Win32Service\RightInfo::getUsername</function></member>
<member><function>Win32Service\RightInfo::getDomain</function></member>
<member><link linkend="win32service.constants.rights">Constantes de permisos Win32</link></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 48783163fcd8ebcc23329269d3e87d38003ea24e Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="win32service-rightinfo.get-username" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Win32Service\RightInfo::getUsername</refname>
<refpurpose>Devuelve el nombre de usuario</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <type class="union"><type>null</type><type>string</type></type> <methodname>Win32Service\RightInfo::getUsername</methodname>
<void />
</methodsynopsis>
<para>
Devuelve el nombre de usuario.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve el nombre de usuario o el GUID si la resolución falla.
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>Win32Service\RightInfo::__construct</function></member>
<member><function>Win32Service\RightInfo::getRights</function></member>
<member><function>Win32Service\RightInfo::isGrantAccess</function></member>
<member><function>Win32Service\RightInfo::isDenyAccess</function></member>
<member><function>Win32Service\RightInfo::getFullUsername</function></member>
<member><function>Win32Service\RightInfo::getDomain</function></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 48783163fcd8ebcc23329269d3e87d38003ea24e Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="win32service-rightinfo.is-deny-access" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Win32Service\RightInfo::isDenyAccess</refname>
<refpurpose>Devuelve true si el RightInfo se refiere a la denegación de acceso al recurso</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <type>bool</type> <methodname>Win32Service\RightInfo::isDenyAccess</methodname>
<void />
</methodsynopsis>
<para>
Devuelve &true; si el RightInfo se refiere a la denegación de acceso al recurso, de lo contrario, es &false;.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve &true; si el RightInfo se refiere a la denegación de acceso al recurso, de lo contrario, es &false;.
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>Win32Service\RightInfo::__construct</function></member>
<member><function>Win32Service\RightInfo::getRights</function></member>
<member><function>Win32Service\RightInfo::isGrantAccess</function></member>
<member><function>Win32Service\RightInfo::getFullUsername</function></member>
<member><function>Win32Service\RightInfo::getUsername</function></member>
<member><function>Win32Service\RightInfo::getDomain</function></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 48783163fcd8ebcc23329269d3e87d38003ea24e Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<refentry xml:id="win32service-rightinfo.is-grant-access" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>Win32Service\RightInfo::isGrantAccess</refname>
<refpurpose>Devuelve true si el RightInfo se refiere al acceso al recurso</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>final</modifier> <modifier>public</modifier> <type>bool</type> <methodname>Win32Service\RightInfo::isGrantAccess</methodname>
<void />
</methodsynopsis>
<para>
Devuelve &true; si el RightInfo se refiere al acceso al recurso, de lo contrario, es &false;.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Devuelve &true; si el RightInfo se refiere al acceso al recurso, de lo contrario, es &false;.
</para>
</refsect1><!-- }}} -->
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>Win32Service\RightInfo::__construct</function></member>
<member><function>Win32Service\RightInfo::getRights</function></member>
<member><function>Win32Service\RightInfo::isDenyAccess</function></member>
<member><function>Win32Service\RightInfo::getFullUsername</function></member>
<member><function>Win32Service\RightInfo::getUsername</function></member>
<member><function>Win32Service\RightInfo::getDomain</function></member>
</simplelist>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,79 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: b655c9df27e18490c77eabaf056e7f56854740b4 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<chapter xml:id="win32service.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.setup;
<!-- {{{ Requirements -->
<section xml:id="win32service.requirements">
&reftitle.required;
<para>
Las versiones de Windows soportadas son las mismas que el paquete redistribuible Visual C++ utilizado para construir PHP.
</para>
</section>
<!-- }}} -->
<!-- {{{ Installation -->
<section xml:id="win32service.installation">
&reftitle.install;
<para>
&pecl.info;
<link xlink:href="&url.pecl.package;win32service">&url.pecl.package;win32service</link>
</para>
</section>
<!-- }}} -->
<section xml:id="win32service.security">
<title xmlns="http://docbook.org/ns/docbook">Consideraciones de seguridad</title>
<para>
Esta extensión requiere privilegios de administrador para ciertas acciones tales como
<link linkend="function.win32-create-service">create</link>,
<link linkend="function.win32-delete-service">delete</link>,
<link linkend="function.win32-start-service">start</link>,
<link linkend="function.win32-stop-service">stop</link>,
<link linkend="function.win32-pause-service">pause</link> y
<link linkend="function.win32-continue-service">continue</link>.
Esta exigencia puede causar una elevación de privilegios si el control de
servicio está disponible desde la interfaz Web o el control remoto.
</para>
<para>
La ACL del servicio puede ser definida después de su adición en el SCM para delegar
las tareas de administración actuales a una cuenta no administrador o a una cuenta de servicio.
</para>
<para>
A partir de Win32Service 1.1.0, los derechos de servicio pueden ser gestionados con PHP. Los ACL actuales pueden ser leídos con
<function>win32_read_all_rights_access_service</function>, un derecho de acceso o de denegación puede ser añadido con
<function>win32_add_right_access_service</function>, o un derecho de acceso puede ser eliminado con
<function>win32_remove_right_access_service</function>.
</para>
<para>
Se recomienda actualizar a Win32Service 1.1.0.
Para instrucciones adicionales sobre la gestión de derechos sin la extensión (o con una versión anterior a 1.1.0), consulte la
<link xlink:href="&url.win32service.kb914392;">Base de conocimientos de Microsoft</link>.
</para>
</section>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 4d17b7b4947e7819ff5036715dd706be87ae4def Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<reference xml:id="class.win32serviceexception"
role="exception"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns="http://docbook.org/ns/docbook">
<title>La clase Win32ServiceException</title>
<titleabbrev>Win32ServiceException</titleabbrev>
<partintro>
<!-- {{{ win32serviceexception intro -->
<section xml:id="win32serviceexception.intro">
&reftitle.intro;
<para>
La excepción reemplaza el antiguo mecanismo donde el valor de error debía ser
comparado con las constantes para detectar qué error había sido emitido. El código
de la excepción es igual al valor de la constante de error y el mensaje de
la excepción se basa en el nombre de la constante correspondiente.
</para>
</section>
<!-- }}} -->
<section xml:id="win32serviceexception.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>Win32ServiceException</classname></ooclass>
<!-- {{{ Exception synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>Win32ServiceException</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>Exception</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.exception')/db:partintro/db:section/db:classsynopsis/db:fieldsynopsis[preceding-sibling::db:classsynopsisinfo[1][@role='comment' and text()='&Properties;']]))">
<xi:fallback />
</xi:include>
<!-- Comment this section out if the exception does not contain any methods -->
<!--
<classsynopsisinfo role="comment">Methods</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.win32serviceexception')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
-->
<!-- If the exception extends another exception use this -->
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.exception')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
</partintro>
<!-- If the exception has any methods you'd like to document use this
&reference.extname.entities.classname;
-->
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 48783163fcd8ebcc23329269d3e87d38003ea24e Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes Maintainer: Marqitos -->
<reference xml:id="class.win32service-rightinfo"
role="exception"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns="http://docbook.org/ns/docbook">
<title>La clase Win32Service\RightInfo</title>
<titleabbrev>Win32Service\RightInfo</titleabbrev>
<partintro>
<!-- {{{ win32serviceexception intro -->
<section xml:id="win32service-rightinfo.intro">
&reftitle.intro;
<para>
La clase interna <classname>Win32Service\RightInfo</classname> encapsula el resultado de <function>win32_read_right_access_service</function>.
</para>
</section>
<!-- }}} -->
<section xml:id="win32service-rightinfo.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>Win32Service\RightInfo</classname></ooclass>
<!-- {{{ Exception synopsis -->
<classsynopsisinfo>
<modifier>final</modifier>
<ooclass>
<classname>Win32Service\RightInfo</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.win32service-rightinfo')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
</partintro>
&reference.win32service.entities.rightinfo;
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->