win32service 関数とは? わかりやすく解説

win32service 関数

導入

win32service は Windows 限定の拡張モジュールです。サービスコントロールマネージャと 連携してサービスの開始・停止・登録・解除を行ったり、PHP スクリプトを サービスとして実行させる機能を提供します。

要件

Windows NT、Windows 2000、Windows XP あるいは Windows Server 2003 が必要です。Windows NT 系の Windows に対応しています。

インストール手順

手順 17. PECL からのインストール
  1. http://snaps.php.net/win32/ から php_win32service.dll がダウンロード可能です。 PHP のバージョンに一致する PECL_X_X フォルダを選択します。
  2. php_win32service.dll を extension_dir にコピーします。
  3. php.ini で拡張モジュールを読み込みます。
    
    extension=php_win32service.dll
    
          

例 2433. PHP スクリプトをサービスとして登録する
<?php
win32_create_service(array(
       'service' => 'dummyphp',                # サービスの名前
       'display' => 'sample dummy PHP service', # 説明
       'params' => 'c:\path\to\script.php run', # スクリプトへのパスとパラメータ
   ));
?>


例 2434. サービスの登録を解除する
<?php
win32_delete_service('dummyphp');
?>


例 2435. サービスとして実行する
<?php
if ($argv[1] == 'run') {
  win32_start_service_ctrl_dispatcher('dummyphp');

  while (WIN32_SERVICE_CONTROL_STOP != win32_get_last_control_message()) {
   # ここに実際の作業内容を書きます。
   # 1 回のループに 30 秒以上かからないように心がけてください。
  }
}
?>


定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが 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 — SCM データベースに新しいサービスのエントリを作成する
win32_delete_service — SCM データベースからサービスのエントリを削除する
win32_get_last_control_message — サービスに送信された直近の制御メッセージを返す
win32_query_service_status — サービスの状態を問い合わせる
win32_set_service_status — サービスの状態を更新する
win32_start_service_ctrl_dispatcher — スクリプトを SCM に登録し、指定した名前でサービスとして稼動させる ようにする
win32_start_service — サービスを開始する
win32_stop_service — サービスを停止する




固有名詞の分類

このページでは「PHP関数リファレンス」からwin32service 関数を検索した結果を表示しています。
Weblioに収録されているすべての辞書からwin32service 関数を検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からwin32service 関数 を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「win32service 関数」の関連用語

win32service 関数のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



win32service 関数のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2025 by the PHP Documentation Group.

©2025 GRAS Group, Inc.RSS