以下常數由此擴充套件定義,並且只有在擴充套件已編譯到 PHP 中或在執行階段動態載入時才會可用。
常數 | 值 | 說明 |
---|---|---|
WIN32_SERVICE_WIN32_OWN_PROCESS |
0x00000010 |
服務在其自己的流程中執行。 |
WIN32_SERVICE_INTERACTIVE_PROCESS |
0x00000100 |
服務可以與桌面互動。此選項在 Windows Vista 或更高版本上不可用。 |
WIN32_SERVICE_WIN32_OWN_PROCESS_INTERACTIVE |
0x00000110 |
此服務在其自身的進程中運行,並且可以與桌面互動。此選項在 Windows Vista 或更高版本中不可用。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_SERVICE_CONTINUE_PENDING |
0x00000005 |
服務繼續擱置中。 |
WIN32_SERVICE_PAUSE_PENDING |
0x00000006 |
服務暫停擱置中。 |
WIN32_SERVICE_PAUSED |
0x00000007 |
服務已暫停。 |
WIN32_SERVICE_RUNNING |
0x00000004 |
服務正在運行。 |
WIN32_SERVICE_START_PENDING |
0x00000002 |
服務正在啟動。 |
WIN32_SERVICE_STOP_PENDING |
0x00000003 |
服務正在停止。 |
WIN32_SERVICE_STOPPED |
0x00000001 |
服務未運行。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_SERVICE_CONTROL_CONTINUE |
0x00000003 |
通知暫停的服務應繼續執行。 |
WIN32_SERVICE_CONTROL_DEVICEEVENT |
0x0000000B |
|
WIN32_SERVICE_CONTROL_HARDWAREPROFILECHANGE |
0x0000000C |
|
WIN32_SERVICE_CONTROL_INTERROGATE |
0x00000004 |
通知服務應向服務控制管理員報告其目前的狀態資訊。 |
WIN32_SERVICE_CONTROL_NETBINDADD |
0x00000007 |
通知網路服務有一個新的繫結元件。 |
WIN32_SERVICE_CONTROL_NETBINDDISABLE |
0x0000000A |
通知網路服務其其中一個繫結已被停用。 |
WIN32_SERVICE_CONTROL_NETBINDENABLE |
0x00000009 |
通知網路服務已啟用一個先前被停用的繫結。 |
WIN32_SERVICE_CONTROL_NETBINDREMOVE |
0x00000008 |
通知網路服務已移除一個繫結元件。 |
WIN32_SERVICE_CONTROL_PARAMCHANGE |
0x00000006 |
通知服務其啟動參數已變更。 |
WIN32_SERVICE_CONTROL_PAUSE |
0x00000002 |
通知服務應暫停。 |
WIN32_SERVICE_CONTROL_POWEREVENT |
0x0000000D |
|
WIN32_SERVICE_CONTROL_PRESHUTDOWN |
0x0000000F |
通知服務系統即將關閉。處理此通知的服務會阻止系統關閉,直到服務停止或預先關閉的逾時時間到期。 Windows Server 2003 和 Windows XP/2000 不支援此值。 |
WIN32_SERVICE_CONTROL_SESSIONCHANGE |
0x0000000E |
|
WIN32_SERVICE_CONTROL_SHUTDOWN |
0x00000005 |
通知服務系統正在關閉,以便服務可以執行清除任務。如果服務接受此控制代碼,則它必須在執行清除任務後停止。 SCM 傳送此控制代碼後,它將不會向服務傳送其他控制代碼。 |
WIN32_SERVICE_CONTROL_STOP |
0x00000001 |
通知服務應停止。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_SERVICE_ACCEPT_HARDWAREPROFILECHANGE |
0x00000020 |
當電腦的硬體設定檔變更時,會通知服務。這讓系統可以將 WIN32_SERVICE_CONTROL_HARDWAREPROFILECHANGE 通知傳送到服務。 |
WIN32_SERVICE_ACCEPT_NETBINDCHANGE |
0x00000010 |
此服務是一個網路元件,可以在不停用並重新啟動的情況下接受其繫結的變更。此控制代碼允許服務接收 WIN32_SERVICE_CONTROL_NETBINDADD 、WIN32_SERVICE_CONTROL_NETBINDREMOVE 、WIN32_SERVICE_CONTROL_NETBINDENABLE 和 WIN32_SERVICE_CONTROL_NETBINDDISABLE 通知。 |
WIN32_SERVICE_ACCEPT_PARAMCHANGE |
0x00000008 |
服務可以在不停用並重新啟動的情況下重新讀取其啟動參數。此控制代碼允許服務接收 WIN32_SERVICE_CONTROL_PARAMCHANGE 通知。 |
WIN32_SERVICE_ACCEPT_PAUSE_CONTINUE |
0x00000002 |
服務可以暫停和繼續。此控制代碼允許服務接收 WIN32_SERVICE_CONTROL_PAUSE 和 WIN32_SERVICE_CONTROL_CONTINUE 通知。 |
WIN32_SERVICE_ACCEPT_POWEREVENT |
0x00000040 |
當電腦的電源狀態改變時,服務會收到通知。這讓系統可以發送 WIN32_SERVICE_CONTROL_POWEREVENT 通知給服務。 |
WIN32_SERVICE_ACCEPT_PRESHUTDOWN |
0x00000100 |
服務可以執行預關機任務。此控制碼讓服務可以接收 WIN32_SERVICE_CONTROL_PRESHUTDOWN 通知。Windows Server 2003 和 Windows XP/2000 不支援此值。 |
WIN32_SERVICE_ACCEPT_SESSIONCHANGE |
0x00000080 |
當電腦的階段作業狀態改變時,服務會收到通知。這讓系統可以發送 WIN32_SERVICE_CONTROL_SESSIONCHANGE 通知給服務。Windows 2000:不支援此值。 |
WIN32_SERVICE_ACCEPT_SHUTDOWN |
0x00000004 |
系統關機時,服務會收到通知。此控制碼讓服務可以接收 WIN32_SERVICE_CONTROL_SHUTDOWN 通知。 |
WIN32_SERVICE_ACCEPT_STOP |
0x00000001 |
服務可以被停止。此控制碼讓服務可以接收 WIN32_SERVICE_CONTROL_STOP 通知。 |
WIN32_SERVICE_ACCEPT_TIMECHANGE |
0x00000200 |
系統時間改變時,服務會收到通知。這讓系統可以發送 WIN32_SERVICE_CONTROL_TIMECHANGE 通知給服務。Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP/2000:不支援此控制碼。 |
WIN32_SERVICE_ACCEPT_TRIGGEREVENT |
0x00000400 |
服務註冊的事件發生時,服務會收到通知。這讓系統可以發送 WIN32_SERVICE_CONTROL_TRIGGEREVENT 通知給服務。Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP/2000:不支援此控制碼。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_SERVICE_BOOT_START |
0x00000000 |
由系統載入器啟動的裝置驅動程式。此值僅適用於驅動程式服務。 |
WIN32_SERVICE_SYSTEM_START |
0x00000001 |
由 IoInitSystem 函式啟動的裝置驅動程式。此值僅適用於驅動程式服務。 |
WIN32_SERVICE_AUTO_START |
0x00000002 |
在系統啟動期間由服務控制管理員自動啟動的服務。 |
WIN32_SERVICE_DEMAND_START |
0x00000003 |
當處理程序呼叫 StartService 函式時,由服務控制管理員啟動的服務。 |
WIN32_SERVICE_DISABLED |
0x00000004 |
無法啟動的服務。嘗試啟動服務會導致錯誤碼 WIN32_ERROR_SERVICE_DISABLED 。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_SERVICE_ERROR_IGNORE |
0x00000000 |
啟動程式忽略錯誤並繼續啟動操作。 |
WIN32_SERVICE_ERROR_NORMAL |
0x00000001 |
啟動程式將錯誤記錄到事件記錄檔中,但繼續啟動操作。 |
WIN32_SERVICE_ERROR_SEVERE |
0x00000002 |
啟動程式將錯誤記錄到事件記錄檔中。如果正在啟動上次正常開機的組態,則啟動操作會繼續。否則,系統會使用上次正常開機的組態重新啟動。 |
WIN32_SERVICE_ERROR_CRITICAL |
0x00000003 |
啟動程式會盡可能將錯誤記錄到事件記錄檔中。如果正在啟動上次正常開機的組態,則啟動操作會失敗。否則,系統會使用上次正常開機的組態重新啟動。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_SERVICE_RUNS_IN_SYSTEM_PROCESS |
0x00000001 |
服務在必須始終執行的系統處理程序中執行。 |
備註:
自 Win32Service 1.0.0 起,這些常數已不再使用。
常數 | 值 | 說明 |
---|---|---|
WIN32_ERROR_ACCESS_DENIED |
0x00000005 |
SCM 資料庫的控制代碼沒有適當的存取權限。 |
WIN32_ERROR_CIRCULAR_DEPENDENCY |
0x00000423 |
指定了循環服務依存關係。 |
WIN32_ERROR_DATABASE_DOES_NOT_EXIST |
0x00000429 |
指定的資料庫不存在。 |
WIN32_ERROR_DEPENDENT_SERVICES_RUNNING |
0x0000041B |
服務無法停止,因為其他正在執行的服務依賴於它。 |
WIN32_ERROR_DUPLICATE_SERVICE_NAME |
0x00000436 |
顯示名稱已存在於服務控制管理員資料庫中,作為服務名稱或其他顯示名稱。 |
WIN32_ERROR_FAILED_SERVICE_CONTROLLER_CONNECT |
0x00000427 |
如果程式以主控台應用程式而非服務的形式執行,則會傳回此錯誤。如果程式將作為主控台應用程式執行以進行偵錯,請將其建構為不會呼叫特定於服務的程式碼。 |
WIN32_ERROR_INSUFFICIENT_BUFFER |
0x0000007A |
緩衝區對於服務狀態結構而言太小。沒有任何資料寫入結構。 |
WIN32_ERROR_INVALID_DATA |
0x0000000D |
指定的服務狀態結構無效。 |
WIN32_ERROR_INVALID_HANDLE |
0x00000006 |
指定服務控制管理員資料庫的控制代碼無效。 |
WIN32_ERROR_INVALID_LEVEL |
0x0000007C |
InfoLevel 參數包含不支援的值。 |
WIN32_ERROR_INVALID_NAME |
0x0000007B |
指定的服務名稱無效。 |
WIN32_ERROR_INVALID_PARAMETER |
0x00000057 |
指定的參數無效。 |
WIN32_ERROR_INVALID_SERVICE_ACCOUNT |
0x00000421 |
user 參數中指定的使用者帳戶名稱不存在。請參閱 win32_create_service()。 |
WIN32_ERROR_INVALID_SERVICE_CONTROL |
0x0000041C |
要求的控制程式碼無效,或者服務無法接受。 |
WIN32_ERROR_PATH_NOT_FOUND |
0x00000003 |
找不到服務二進位制檔案。 |
WIN32_ERROR_SERVICE_ALREADY_RUNNING |
0x00000420 |
服務的執行個體已在執行中。 |
WIN32_ERROR_SERVICE_CANNOT_ACCEPT_CTRL |
0x00000425 |
無法將要求的控制程式碼傳送到服務,因為服務的狀態為 WIN32_SERVICE_STOPPED 、WIN32_SERVICE_START_PENDING 或 WIN32_SERVICE_STOP_PENDING 。 |
WIN32_ERROR_SERVICE_DATABASE_LOCKED |
0x0000041F |
資料庫已鎖定。 |
WIN32_ERROR_SERVICE_DEPENDENCY_DELETED |
0x00000433 |
服務依賴於不存在或已標記為刪除的服務。 |
WIN32_ERROR_SERVICE_DEPENDENCY_FAIL |
0x0000042C |
服務依賴於另一個啟動失敗的服務。 |
WIN32_ERROR_SERVICE_DISABLED |
0x00000422 |
服務已停用。 |
WIN32_ERROR_SERVICE_DOES_NOT_EXIST |
0x00000424 |
指定的服務不存在已安裝的服務。 |
WIN32_ERROR_SERVICE_EXISTS |
0x00000431 |
指定的服務已存在於此資料庫中。 |
WIN32_ERROR_SERVICE_LOGON_FAILED |
0x0000042D |
由於登入失敗,服務未啟動。如果服務設定為在沒有「以服務方式登入」權限的帳戶下執行,則會發生此錯誤。 |
WIN32_ERROR_SERVICE_MARKED_FOR_DELETE |
0x00000430 |
指定的服務已標記為刪除。 |
WIN32_ERROR_SERVICE_NO_THREAD |
0x0000041E |
無法為服務建立執行緒。 |
WIN32_ERROR_SERVICE_NOT_ACTIVE |
0x00000426 |
服務尚未啟動。 |
WIN32_ERROR_SERVICE_REQUEST_TIMEOUT |
0x0000041D |
服務的處理程序已啟動,但未呼叫 StartServiceCtrlDispatcher,或者呼叫 StartServiceCtrlDispatcher 的執行緒可能在控制處理常式函數中遭到封鎖。 |
WIN32_ERROR_SHUTDOWN_IN_PROGRESS |
0x0000045B |
系統正在關機;無法呼叫此函數。 |
WIN32_ERROR_SERVICE_SPECIFIC_ERROR |
0x0000042A |
服務已傳回特定於服務的錯誤程式碼。 |
WIN32_NO_ERROR |
0x00000000 |
無錯誤。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_ABOVE_NORMAL_PRIORITY_CLASS |
0x00008000 |
優先級高於 WIN32_NORMAL_PRIORITY_CLASS 但低於 WIN32_HIGH_PRIORITY_CLASS 的處理程序。 |
WIN32_BELOW_NORMAL_PRIORITY_CLASS |
0x00004000 |
優先級高於 WIN32_IDLE_PRIORITY_CLASS 但低於 WIN32_NORMAL_PRIORITY_CLASS 的處理程序。 |
WIN32_HIGH_PRIORITY_CLASS |
0x00000080 |
執行必須立即執行的時間關鍵型任務的處理程序。此處理程序的執行緒會搶佔一般或閒置優先級類別處理程序的執行緒。例如「工作管理員」,無論作業系統的負載如何,它都必須在使用者呼叫時快速回應。使用高優先級類別時要格外小心,因為高優先級類別應用程式可能會佔用幾乎所有可用的 CPU 時間。 |
WIN32_IDLE_PRIORITY_CLASS |
0x00000040 |
僅在系統閒置時執行的處理程序。此處理程序的執行緒會被任何以更高優先級類別執行的處理程序的執行緒搶佔。螢幕保護程式即為一例。閒置優先級類別會由子處理程序繼承。 |
WIN32_NORMAL_PRIORITY_CLASS |
0x00000020 |
沒有特殊排程需求的處理程序。 |
WIN32_REALTIME_PRIORITY_CLASS |
0x00000100 |
具有最高優先級的處理程序。此處理程序的執行緒會搶佔所有其他處理程序的執行緒,包括執行重要任務的作業系統處理程序。例如,執行時間超過極短間隔的即時處理程序可能會導致磁碟快取無法清除或滑鼠沒有回應。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_SC_ACTION_NONE |
0x00000000 |
無動作。 |
WIN32_SC_ACTION_RESTART |
0x00000001 |
重新啟動服務。 |
WIN32_SC_ACTION_REBOOT |
0x00000002 |
重新啟動伺服器。 |
WIN32_SC_ACTION_RUN_COMMAND |
0x00000003 |
執行指令。 |
常數 | 值 | 說明 |
---|---|---|
WIN32_INFO_SERVICE |
「service」 | |
WIN32_INFO_DISPLAY |
「display」 | |
WIN32_INFO_USER |
「user」 | |
WIN32_INFO_PASSWORD |
「password」 | |
WIN32_INFO_PATH |
「path」 | |
WIN32_INFO_PARAMS |
「params」 | |
WIN32_INFO_DESCRIPTION |
「description」 | |
WIN32_INFO_START_TYPE |
「start_type」 | |
WIN32_INFO_LOAD_ORDER |
「load_order」 | |
WIN32_INFO_SVC_TYPE |
「svc_type」 | |
WIN32_INFO_ERROR_CONTROL |
「error_control」 | |
WIN32_INFO_DELAYED_START |
「delayed_start」 | |
WIN32_INFO_BASE_PRIORITY |
「base_priority」 | |
WIN32_INFO_DEPENDENCIES |
「dependencies」 | |
WIN32_INFO_RECOVERY_DELAY |
「recovery_delay」 | |
WIN32_INFO_RECOVERY_ACTION_1 |
「recovery_action_1」 | |
WIN32_INFO_RECOVERY_ACTION_2 |
「recovery_action_2」 | |
WIN32_INFO_RECOVERY_ACTION_3 |
「recovery_action_3」 | |
WIN32_INFO_RECOVERY_RESET_PERIOD |
「recovery_reset_period」 | |
WIN32_INFO_RECOVERY_ENABLED |
「recovery_enabled」 | |
WIN32_INFO_RECOVERY_REBOOT_MSG |
「recovery_reboot_msg」 | |
WIN32_INFO_RECOVERY_COMMAND |
「recovery_command」 |
常數 | 值 | 說明 |
---|---|---|
WIN32_SERVICE_ALL_ACCESS |
0x000F003F |
|
WIN32_SERVICE_CHANGE_CONFIG |
0x00000002 |
|
WIN32_SERVICE_ENUMERATE_DEPENDENTS |
0x00000008 |
|
WIN32_SERVICE_INTERROGATE |
0x00000080 |
|
WIN32_SERVICE_PAUSE_CONTINUE |
0x00000040 |
|
WIN32_SERVICE_QUERY_CONFIG |
0x00000001 |
|
WIN32_SERVICE_QUERY_STATUS |
0x00000004 |
|
WIN32_SERVICE_START |
0x00000010 |
|
WIN32_SERVICE_STOP |
0x00000020 |
|
WIN32_SERVICE_USER_DEFINED_CONTROL |
0x00000100 |
|
WIN32_ACCESS_SYSTEM_SECURITY |
0x00001000 |
|
WIN32_DELETE |
0x00010000 |
|
WIN32_READ_CONTROL |
0x00020000 |
|
WIN32_WRITE_DAC |
0x00040000 |
|
WIN32_WRITE_OWNER |
0x00080000 |
|
WIN32_GENERIC_READ |
包含權限:WIN32_STANDARD_RIGHTS_READ 、WIN32_SERVICE_QUERY_CONFIG 、WIN32_SERVICE_QUERY_STATUS 、WIN32_SERVICE_INTERROGATE 、WIN32_SERVICE_ENUMERATE_DEPENDENTS |
|
WIN32_GENERIC_WRITE |
包含權限:WIN32_STANDARD_RIGHTS_WRITE 、WIN32_SERVICE_CHANGE_CONFIG |
|
WIN32_GENERIC_EXECUTE |
包含權限:WIN32_STANDARD_RIGHTS_EXECUTE 、WIN32_SERVICE_START 、WIN32_SERVICE_STOP 、WIN32_SERVICE_PAUSE_CONTINUE 、WIN32_SERVICE_USER_DEFINED_CONTROL |