wez             Sat Sep 17 12:26:44 2005 EDT

  Added files:                 
    /phpdoc/en/reference/win32service   .cvsignore constants.xml 
                                        functions.xml reference.xml 
    /phpdoc/en/reference/win32service/functions 
                                                win32-create-service.xml 
                                                win32-delete-service.xml 
                                                
win32-get-last-control-message.xml 
                                                win32-query-service-status.xml 
                                                win32-set-service-status.xml 
                                                
win32-start-service-ctrl-dispatcher.xml 
                                                win32-start-service.xml 
                                                win32-stop-service.xml 
  Log:
  document win32 service extension
  
  
http://cvs.php.net/co.php/phpdoc/en/reference/win32service/.cvsignore?r=1.1&p=1
Index: phpdoc/en/reference/win32service/.cvsignore
+++ phpdoc/en/reference/win32service/.cvsignore
functions.xml

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/constants.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/constants.xml
+++ phpdoc/en/reference/win32service/constants.xml
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- $Revision: 1.1 $ -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<section id="win32service.constants">
 &reftitle.constants;
 &extension.constants;
 <variablelist>
  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_CONTROL_CONTINUE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_CONTROL_INTERROGATE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_CONTROL_PAUSE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_CONTROL_STOP</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_CONTROL_HARDWAREPROFILECHANGE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_CONTROL_POWEREVENT</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_CONTROL_SESSIONCHANGE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_ERROR_CALL_NOT_IMPLEMENTED</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_NO_ERROR</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_RUNNING</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_STOPPED</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_STOP_PENDING</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_WIN32_OWN_PROCESS</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_INTERACTIVE_PROCESS</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_STOPPED</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_START_PENDING</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_STOP_PENDING</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_RUNNING</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_CONTINUE_PENDING</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_PAUSE_PENDING</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_PAUSED</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_ACCEPT_NETBINDCHANGE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_ACCEPT_PARAMCHANGE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_ACCEPT_PAUSE_CONTINUE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_ACCEPT_SHUTDOWN</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_ACCEPT_STOP</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_ACCEPT_HARDWAREPROFILECHANGE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_ACCEPT_POWEREVENT</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_ACCEPT_SESSIONCHANGE</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_FILE_SYSTEM_DRIVER</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_KERNEL_DRIVER</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>


  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_WIN32_SHARE_PROCESS</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>

  <varlistentry>
   <term>
    <constant>WIN32_SERVICE_RUNS_IN_SYSTEM_PROCESS</constant>
     (<type>integer</type>)
   </term>
   <listitem>
    <simpara>

    </simpara>
   </listitem>
  </varlistentry>


















 </variablelist>
</section>

<!-- 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:"../../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/functions.xml
+++ phpdoc/en/reference/win32service/functions.xml
&reference.win32service.functions.win32-create-service;
&reference.win32service.functions.win32-delete-service;
&reference.win32service.functions.win32-get-last-control-message;
&reference.win32service.functions.win32-query-service-status;
&reference.win32service.functions.win32-set-service-status;
&reference.win32service.functions.win32-start-service-ctrl-dispatcher;
&reference.win32service.functions.win32-start-service;
&reference.win32service.functions.win32-stop-service;

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/reference.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/reference.xml
+++ phpdoc/en/reference/win32service/reference.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<!-- Purpose:  -->
<!-- Membership:  -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<reference id="ref.win32service">
 <title>win32service Functions</title>
 <titleabbrev>win32service</titleabbrev>

 <partintro>
  <section id="win32service.intro">
   &reftitle.intro;
   <para>
    The win32service extension is a Windows specific extension that allows PHP
    to communicate with the Service Control Manager to start, stop, register
    and unregister extensions, and even allows your PHP scripts to run as a
    service.
   </para>
  </section>
  <section id="win32service.requirements">
   &reftitle.required;
   <para>
    Windows NT, Windows 2000, Windows XP or Windows Server 2003.  Any version
    of windows derived from Windows NT should be compatible.
   </para>
  </section>
  <section id="win32service.install">
   &reftitle.install; 
   <procedure id="win32service.install-from-pecl">
    <title>Installing from PECL</title>
    <step>
     <para>
      You can download php_win32service.dll from http://snaps.php.net/win32/.
      Choose the PECL_X_X folder that matches you PHP version.
     </para>
    </step>
    <step>
     <para>
      Copy the php_win32service.dll into you <link
      linkend="ini.extension-dir">extension_dir</link>.
     </para>
    </step>
    <step>
     <para>
      Load the extension from your &php.ini;
      <screen>
<![CDATA[
extension=php_win32service.dll
]]>
      </screen>
     </para>
    </step>
   </procedure>
  </section>

  <section id="win32service.examples">
  &reftitle.examples;
   <para>
    <example><title>Registering a PHP to run as a service</title>
     <programlisting role='php'>
<![CDATA[
<?php
win32_create_service(array(
                'service' => 'dummyphp',                 # the name of your 
service
                'display' => 'sample dummy PHP service', # description
                'params' => 'c:\path\to\script.php run', # path to the script 
and parameters
        ));
?>
]]>
     </programlisting>
    </example>
   </para>
   <para>
    <example><title>Unregistering a service</title>
     <programlisting role='php'>
<![CDATA[
<?php
win32_delete_service('dummyphp');
?>
]]>
     </programlisting>
    </example>
   </para>
   <para>
    <example><title>Running as a service</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()) {
    # do your work here.
    # try not to take up more than 30 seconds before going around the loop
    # again
  }
}
?>
]]>
    </programlisting>
    </example>
   </para>
  </section>

  &reference.win32service.constants;
 </partintro>
 &reference.win32service.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:"../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions/win32-create-service.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/functions/win32-create-service.xml
+++ phpdoc/en/reference/win32service/functions/win32-create-service.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<refentry id="function.win32-create-service">
 <refnamediv>
  <refname>win32_create_service</refname>
  <refpurpose>Creates a new service entry in the SCM database</refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>long</type><methodname>win32_create_service</methodname>
   <methodparam><type>array</type><parameter>details</parameter></methodparam>
   <methodparam 
choice="opt"><type>string</type><parameter>machine</parameter></methodparam>
  </methodsynopsis>
 </refsect1>
 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>details</parameter></term>
     <listitem>
      <para>
       An array of service details:
       <variablelist>
        <varlistentry>
         <term><parameter>service</parameter></term>
         <listitem>
          <para>The short name of the service.  This is the name that you
          will use to control the service using the <literal>net</literal>
          command.  The service must be unique (no two services can share the
          same name), and, ideally, should avoid having spaces in the 
name.</para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>display</parameter></term>
         <listitem>
          <para>The display name of the service.  This is the name that you
          will see in the Services Applet.
          </para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>user</parameter></term>
         <listitem>
          <para>
           The name of the user account under which you want the service to
           run.  If omitted, the service will run as the LocalSystem account.
           If the username is specified, you must also provide a password.
          </para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>password</parameter></term>
         <listitem>
          <para>
           The password the corresponds to the <parameter>user</parameter>.
          </para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>path</parameter></term>
         <listitem>
          <para>
           The full path to the executable module that will be launched when
           the service is started.  If omitted, the path to the current PHP
           process will be used.
          </para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>params</parameter></term>
         <listitem>
          <para>
           Command line parameters to pass to the service when it starts.
           If you want to run a PHP script as the service, then the first
           parameter should be the full path to the PHP script that you intend
           to run.
          </para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>load_order</parameter></term>
         <listitem>
          <para>
           Controls the load_order.  This is not yet fully supported.
          </para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>svc_type</parameter></term>
         <listitem>
          <para>
           Sets the service type.  If omitted, the default value is
           <constant>WIN32_SERVICE_WIN32_OWN_PROCESS</constant>.
           Don't change this unless you know what you're doing.
          </para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>start_type</parameter></term>
         <listitem>
          <para>
           Specifies how the service should be started.  The default is
           <constant>WIN32_SERVICE_AUTO_START</constant> which means the the
           service will be launched when the machine starts up.
          </para>
         </listitem>
        </varlistentry>
        <varlistentry>
         <term><parameter>error_control</parameter></term>
         <listitem>
          <para>
           Informs the SCM what it should do when it detects a problem with
           the service.  The default is
           <constant>WIN32_SERVER_ERROR_IGNORE</constant>.  Changing this
           value is not yet fully supported.
          </para>
         </listitem>
        </varlistentry>
       </variablelist>
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>machine</parameter></term>
     <listitem>
      <para>
       The optional machine name on which you want to create a service.
       If omitted, it will use the local machine.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   Returns &true; on success, otherwise returns a win32 error code.
  </para>
 </refsect1>

 <refsect1 role="examples">
  &reftitle.examples;
  <para>
   <example>
    <title>A <function>win32_create_service</function> example</title>
    <para>
     Any text that describes the purpose of the example, or
     what goes on in the example should go here (inside the
    <programlisting role="php">
<![CDATA[
<?php
$x = win32_create_service(array(
                'service' => 'dummyphp',
                'display' => 'sample dummy PHP service',
                'params' => __FILE__ . ' run',
));
debug_zval_dump($x);
?>
]]>
     </programlisting>
    </para>
   </example>
  </para>
 </refsect1>


 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>win32_delete_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:"../../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions/win32-delete-service.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/functions/win32-delete-service.xml
+++ phpdoc/en/reference/win32service/functions/win32-delete-service.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<refentry id="function.win32-delete-service">
 <refnamediv>
  <refname>win32_delete_service</refname>
  <refpurpose>Deletes a service entry from the SCM database</refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>long</type><methodname>win32_delete_service</methodname>
   
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
   <methodparam 
choice="opt"><type>string</type><parameter>machine</parameter></methodparam>
  </methodsynopsis>

  <para>
   Attempts to delete a service from the SCM database.  Administrative
   privileges are required for this to succeed.
  </para>
  <para>
   This function really just marks the service for deletion.  If other
   processes (such as the Services Applet) are open, then the deletion will be
   deferred until those applications are closed.  If a service is marked for
   deletion, further attempts to delete it will fail, and attempts to create a
   new service with that name will also fail.
  </para>

 </refsect1>
 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>servicename</parameter></term>
     <listitem>
      <para>
       The short name of the service.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>machine</parameter></term>
     <listitem>
      <para>
       The optional machine name.  If omitted, the local machine will be used.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   Returns &true; on success, or a win32 error code on failure.
  </para>
 </refsect1>

 <refsect1 role="examples">
  &reftitle.examples;
  <para>
   <example>
    <title>A <function>win32_delete_service</function> example</title>
    <para>
     Deletes the dummyphp service.
    </para>
    <programlisting role="php">
<![CDATA[
<?php
win32_delete_service('dummyphp');
?>
]]>
    </programlisting>
   </example>
  </para>
 </refsect1>


 <!-- refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>win32_strerror</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:"../../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions/win32-get-last-control-message.xml?r=1.1&p=1
Index: 
phpdoc/en/reference/win32service/functions/win32-get-last-control-message.xml
+++ 
phpdoc/en/reference/win32service/functions/win32-get-last-control-message.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<refentry id="function.win32-get-last-control-message">
 <refnamediv>
  <refname>win32_get_last_control_message</refname>
  <refpurpose>Returns the last control message that was sent to this 
service</refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>long</type><methodname>win32_get_last_control_message</methodname>
   <void/>
  </methodsynopsis>

  <para>
   Returns the control code that was last sent to this service process.
   When running as a service you should periodically check this to determine if
   your service needs to stop running.
  </para>

 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   Returns a control constant; one of 
<constant>WIN32_SERVICE_CONTROL_CONTINUE</constant>,
   <constant>WIN32_SERVICE_CONTROL_INTERROGATE</constant>,
   <constant>WIN32_SERVICE_CONTROL_PAUSE</constant>,
   <constant>WIN32_SERVICE_CONTROL_STOP</constant>,
   <constant>WIN32_SERVICE_CONTROL_HARDWAREPROFILECHANGE</constant>,
   <constant>WIN32_SERVICE_CONTROL_POWEREVENT</constant>,
   <constant>WIN32_SERVICE_CONTROL_SESSIONCHANGE</constant>.
  </para>
 </refsect1>

 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>win32_start_service_ctrl_dispatcher</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:"../../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions/win32-query-service-status.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/functions/win32-query-service-status.xml
+++ phpdoc/en/reference/win32service/functions/win32-query-service-status.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<refentry id="function.win32-query-service-status">
 <refnamediv>
  <refname>win32_query_service_status</refname>
  <refpurpose>Queries the status of a service</refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>mixed</type><methodname>win32_query_service_status</methodname>
   
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
   <methodparam 
choice="opt"><type>string</type><parameter>machine</parameter></methodparam>
  </methodsynopsis>

  <para>
   Queries the current status for a service, returning an array of
   information.
  </para>

 </refsect1>
 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>servicename</parameter></term>
     <listitem>
      <para>
       The short name of the service.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>machine</parameter></term>
     <listitem>
      <para>
       The optional machine name.  If omitted, the local machine will be used.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   Returns &false; on failure, otherwise returns an array consisting of the
   following information:
  </para>
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>ServiceType</parameter></term>
     <listitem>
      <para>
       The dwServiceType.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>CurrentState</parameter></term>
     <listitem>
      <para>
       The dwCurrentState.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>ControlsAccepted</parameter></term>
     <listitem>
      <para>
       Which service controls are accepted by the service.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>Win32ExitCode</parameter></term>
     <listitem>
      <para>
       If the service exited, the return code from the process.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>ServiceSpecificExitCode</parameter></term>
     <listitem>
      <para>
       If the service exited with an error condition, the service specific
       code that is logged in the event log is visible here.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>CheckPoint</parameter></term>
     <listitem>
      <para>
       If the service is shutting down, holds the current check point number.
       This is used by the SCM as a kind of heart-beat to detect a wedged 
service
       process.  The value of the check point is best interpreted in
       conjunction with the WaitHint value.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>WaitHint</parameter></term>
     <listitem>
      <para>
       If the service is shutting down it will set WaitHint to a checkpoint
       value that will indicate 100% completion.  This can be used to
       implement a progress indicator.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>ProcessId</parameter></term>
     <listitem>
      <para>
       The windows process identifier.  If 0, the process is not running.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>ServiceFlags</parameter></term>
     <listitem>
      <para>
       The dwServiceFlags.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>

 </refsect1>

 <!-- Use when EXCEPTIONS exist
 <refsect1 role="exceptions">
  &reftitle.exceptions;
  <para>
   When does this function throw exceptions?
  </para>
 </refsect1>
 -->


 <!-- Use when a CHANGELOG exists
 <refsect1 role="changelog">
  &reftitle.changelog;
  <para>
   <informaltable>
    <tgroup cols="2">
     <thead>
      <row>
       <entry>&Version;</entry>
       <entry>&Description;</entry>
      </row>
     </thead>
     <tbody>
      <row>
       <entry>Enter the PHP version of change here</entry>
       <entry>Description of change</entry>
      </row>
     </tbody>
    </tgroup>
   </informaltable>
  </para>
 </refsect1>
 -->


 <!-- Use when examples exist
 <refsect1 role="examples">
  &reftitle.examples;
  <para>
   <example>
    <title>A <function>win32_query_service_status</function> example</title>
    <para>
     Any text that describes the purpose of the example, or
     what goes on in the example should go here (inside the
     <example> tag, not out
    </para>
    <programlisting role="php">
<![CDATA[
<?php
if ($anexample === true) {
    echo 'Use the PEAR Coding Standards';
}
?>
]]>
    </programlisting>
    &example.outputs;
    <screen>
<![CDATA[
Use the PEAR Coding Standards
]]>
    </screen>
   </example>
  </para>
 </refsect1>
 -->


 <!-- Use when adding See Also links
 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function></function></member>
    <member>Or <link linkend="somethingelse">something else</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:"../../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions/win32-set-service-status.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/functions/win32-set-service-status.xml
+++ phpdoc/en/reference/win32service/functions/win32-set-service-status.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<refentry id="function.win32-set-service-status">
 <refnamediv>
  <refname>win32_set_service_status</refname>
  <refpurpose>Update the service status</refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>bool</type><methodname>win32_set_service_status</methodname>
   <methodparam><type>int</type><parameter>status</parameter></methodparam>
  </methodsynopsis>
  <para>
   Informs the SCM of the current status of a running service.
   This call is only valid for a running service process.
  </para>
 </refsect1>
 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>status</parameter></term>
     <listitem>
      <para>
       The service status code, one of
       <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>
   </variablelist>
  </para>
 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   &return.success;
  </para>
 </refsect1>


 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>win32_start_service_ctrl_dispatcher</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:"../../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions/win32-start-service-ctrl-dispatcher.xml?r=1.1&p=1
Index: 
phpdoc/en/reference/win32service/functions/win32-start-service-ctrl-dispatcher.xml
+++ 
phpdoc/en/reference/win32service/functions/win32-start-service-ctrl-dispatcher.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<refentry id="function.win32-start-service-ctrl-dispatcher">
 <refnamediv>
  <refname>win32_start_service_ctrl_dispatcher</refname>
  <refpurpose>Registers the script with the SCM, so that it can act as the 
service with the given name</refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>bool</type><methodname>win32_start_service_ctrl_dispatcher</methodname>
   <methodparam><type>string</type><parameter>name</parameter></methodparam>
  </methodsynopsis>

  <para>
   When launched via the Service Control Manager, a service process is
   required to "check-in" with it to establish service monitoring and
   communication facilities.  This function performs the check-in by spawning
   a thread to handle the lower-level communication with the service control
   manager.
  </para>
  <para>
   Once started, the service process should continue to check-in with the
   service control manager so that it can determine if it should terminate.
   This is achieved by periodically calling
   <function>win32_get_last_control_message</function> and handling the return
   code appropriately.
  </para>


 </refsect1>
 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>name</parameter></term>
     <listitem>
      <para>
       The short-name of the service, as registered by
       <function>win32_create_service</function>.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   &return.success;
  </para>
 </refsect1>
 <refsect1 role="examples">
  &reftitle.examples;
  <para>
   <example>
    <title>A <function>win32_start_service_ctrl_dispatcher</function> 
example</title>
    <para>
     Any text that describes the purpose of the example, or
     what goes on in the example should go here (inside the
    </para>
    <programlisting role="php">
<![CDATA[
<?php
if (!win32_start_service_ctrl_dispatcher('dummyphp')) {
  die("I'm probably not running under the service control manager");
}

while (WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {
  # do some work here, trying not to take more than around 30 seconds
  # before coming back into the loop again
}
?>
]]>
    </programlisting>
   </example>
  </para>
 </refsect1>


 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>win32_get_last_control_message</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:"../../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions/win32-start-service.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/functions/win32-start-service.xml
+++ phpdoc/en/reference/win32service/functions/win32-start-service.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<refentry id="function.win32-start-service">
 <refnamediv>
  <refname>win32_start_service</refname>
  <refpurpose>Starts a service</refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>long</type><methodname>win32_start_service</methodname>
   
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
   <methodparam 
choice="opt"><type>string</type><parameter>machine</parameter></methodparam>
  </methodsynopsis>

  <para>
   Attempts to start the named service.  Usually requires administrative
   privileges.
  </para>

 </refsect1>
 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>servicename</parameter></term>
     <listitem>
      <para>
       The short name of the service.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>machine</parameter></term>
     <listitem>
      <para>
       Optional machine name.  If omitted, the local machine is used.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   Returns <constant>WIN32_NO_ERROR</constant> on success, or some other win32
   error code on failure.
  </para>
 </refsect1>

 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>win32_stop_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:"../../../../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
-->

http://cvs.php.net/co.php/phpdoc/en/reference/win32service/functions/win32-stop-service.xml?r=1.1&p=1
Index: phpdoc/en/reference/win32service/functions/win32-stop-service.xml
+++ phpdoc/en/reference/win32service/functions/win32-stop-service.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<!-- Generated by xml_proto.php v2.3. Found in /scripts directory of phpdoc. -->
<refentry id="function.win32-stop-service">
 <refnamediv>
  <refname>win32_stop_service</refname>
  <refpurpose>Stops a service</refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>long</type><methodname>win32_stop_service</methodname>
   
<methodparam><type>string</type><parameter>servicename</parameter></methodparam>
   <methodparam 
choice="opt"><type>string</type><parameter>machine</parameter></methodparam>
  </methodsynopsis>

  <para>
   Stops a named service.  Requires administrative privileges.
  </para>

 </refsect1>
 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>servicename</parameter></term>
     <listitem>
      <para>
       The short name of the service.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>machine</parameter></term>
     <listitem>
      <para>
       Optional machine name.  If omitted, the local machine is used.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   Returns <constant>WIN32_NO_ERROR</constant> on success, or a win32 error
   code on failure.
  </para>
 </refsect1>

 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>win32_start_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:"../../../../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
-->

Reply via email to