win32_create_service> <win32_ps_stat_proc
Last updated: Mon, 29 Oct 2007

CLXXVI. win32service Functions

简介

The win32service extension is a Windows specific extension that allows PHP to communicate with the Service Control Manager to start, stop, register and unregister services, and even allows your PHP scripts to run as a service.

需求

Windows NT, Windows 2000, Windows XP or Windows Server 2003. Any version of Windows derived from Windows NT should be compatible.

安装

过程17.Installing from PECL

  1. You can download php_win32service.dll from http://snaps.php.net/win32/. Choose the PECL_X_X folder that matches you PHP version.

  2. Copy the php_win32service.dll into your extension_dir.

  3. Load the extension from your php.ini

    
    extension=php_win32service.dll
    
       

范例

例2397.Registering a PHP script to run as a service

<?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
 
));
?>

例2398.Unregistering a service

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

例2399.Running as a service

<?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
 
}
}
?>

预定义常量

以下常量由本扩展模块定义,因此只有在本扩展模块被编译到 PHP 中,或者在运行时被动态加载后才有效。

WIN32_SERVICE_CONTROL_CONTINUE (integer)
WIN32_SERVICE_CONTROL_INTERROGATE (integer)
WIN32_SERVICE_CONTROL_PAUSE (integer)
WIN32_SERVICE_CONTROL_STOP (integer)
WIN32_SERVICE_CONTROL_HARDWAREPROFILECHANGE (integer)
WIN32_SERVICE_CONTROL_POWEREVENT (integer)
WIN32_SERVICE_CONTROL_SESSIONCHANGE (integer)
WIN32_ERROR_CALL_NOT_IMPLEMENTED (integer)
WIN32_NO_ERROR (integer)
WIN32_SERVICE_RUNNING (integer)
WIN32_SERVICE_STOPPED (integer)
WIN32_SERVICE_STOP_PENDING (integer)
WIN32_SERVICE_WIN32_OWN_PROCESS (integer)
WIN32_SERVICE_INTERACTIVE_PROCESS (integer)
WIN32_SERVICE_STOPPED (integer)
WIN32_SERVICE_START_PENDING (integer)
WIN32_SERVICE_STOP_PENDING (integer)
WIN32_SERVICE_RUNNING (integer)
WIN32_SERVICE_CONTINUE_PENDING (integer)
WIN32_SERVICE_PAUSE_PENDING (integer)
WIN32_SERVICE_PAUSED (integer)
WIN32_SERVICE_ACCEPT_NETBINDCHANGE (integer)
WIN32_SERVICE_ACCEPT_PARAMCHANGE (integer)
WIN32_SERVICE_ACCEPT_PAUSE_CONTINUE (integer)
WIN32_SERVICE_ACCEPT_SHUTDOWN (integer)
WIN32_SERVICE_ACCEPT_STOP (integer)
WIN32_SERVICE_ACCEPT_HARDWAREPROFILECHANGE (integer)
WIN32_SERVICE_ACCEPT_POWEREVENT (integer)
WIN32_SERVICE_ACCEPT_SESSIONCHANGE (integer)
WIN32_SERVICE_FILE_SYSTEM_DRIVER (integer)
WIN32_SERVICE_KERNEL_DRIVER (integer)
WIN32_SERVICE_WIN32_SHARE_PROCESS (integer)
WIN32_SERVICE_RUNS_IN_SYSTEM_PROCESS (integer)

目录

win32_create_service Creates a new service entry in the SCM database
win32_delete_service Deletes a service entry from the SCM database
win32_get_last_control_message Returns the last control message that was sent to this service
win32_query_service_status Queries the status of a service
win32_set_service_status Update the service status
win32_start_service_ctrl_dispatcher Registers the script with the SCM, so that it can act as the service with the given name
win32_start_service Starts a service
win32_stop_service Stops a service


add a note add a note User Contributed Notes
win32service Functions
There are no user contributed notes for this page.

win32_create_service> <win32_ps_stat_proc
Last updated: Mon, 29 Oct 2007