PHP: win32service Functions - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

win32_create_service win32_ps_stat_proc

Last updated: Sat, 27 Jan 2007

view this page in

# CLXXII. 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.

# Установка

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

# Примеры

Пример 1. 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
));
?>`

Пример 2. Unregistering a service

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

Пример 3. 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)

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: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 11:33:19 2007 PST