⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 winsvc.inc

📁 这是asm驱动的开发包
💻 INC
字号:
comment ^

Module Name:
    winsvc.inc

Abstract:
    Header file for the Service Control Manager
    
Author:
    Four-F (four-f@mail.ru)

Last Update:
	25-November-2003
^

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service database names
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICES_ACTIVE_DATABASEW      dw "S","e","r","v","i","c","e","s","A","c","t","i","v","e",0
SERVICES_FAILED_DATABASEW      dw "S","e","r","v","i","c","e","s","F","a","i","l","e","d",0

SERVICES_ACTIVE_DATABASEA      db "ServicesActive",0
SERVICES_FAILED_DATABASEA      db "ServicesFailed",0

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Character to designate that a name is a group
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SC_GROUP_IDENTIFIERW           dw "+",0
SC_GROUP_IDENTIFIERA           db "+",0

IFDEF UNICODE
	SERVICES_ACTIVE_DATABASE equ SERVICES_ACTIVE_DATABASEW
	SERVICES_FAILED_DATABASE equ SERVICES_FAILED_DATABASEW
	SC_GROUP_IDENTIFIER      equ SC_GROUP_IDENTIFIERW
ELSE
	SERVICES_ACTIVE_DATABASE   equ    SERVICES_ACTIVE_DATABASEA
	SERVICES_FAILED_DATABASE   equ    SERVICES_FAILED_DATABASEA
	SC_GROUP_IDENTIFIER        equ    SC_GROUP_IDENTIFIERA
ENDIF

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Value to indicate no change to an optional parameter
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_NO_CHANGE              equ 0ffffffffh

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service State -- for Enum Requests (Bit Mask)
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_ACTIVE                 equ 00000001
SERVICE_INACTIVE               equ 00000002
SERVICE_STATE_ALL              equ SERVICE_ACTIVE or SERVICE_INACTIVE

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Controls
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_CONTROL_STOP           equ 00000001h
SERVICE_CONTROL_PAUSE          equ 00000002h
SERVICE_CONTROL_CONTINUE       equ 00000003h
SERVICE_CONTROL_INTERROGATE    equ 00000004h
SERVICE_CONTROL_SHUTDOWN       equ 00000005h
SERVICE_CONTROL_PARAMCHANGE    equ 00000006h
SERVICE_CONTROL_NETBINDADD     equ 00000007h
SERVICE_CONTROL_NETBINDREMOVE  equ 00000008h
SERVICE_CONTROL_NETBINDENABLE  equ 00000009h
SERVICE_CONTROL_NETBINDDISABLE equ 0000000Ah

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service State -- for CurrentState
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_STOPPED                equ 00000001
SERVICE_START_PENDING          equ 00000002
SERVICE_STOP_PENDING           equ 00000003
SERVICE_RUNNING                equ 00000004
SERVICE_CONTINUE_PENDING       equ 00000005
SERVICE_PAUSE_PENDING          equ 00000006
SERVICE_PAUSED                 equ 00000007

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Controls Accepted  (Bit Mask)
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_ACCEPT_STOP            equ 00000001h
SERVICE_ACCEPT_PAUSE_CONTINUE  equ 00000002h
SERVICE_ACCEPT_SHUTDOWN        equ 00000004h
SERVICE_ACCEPT_PARAMCHANGE     equ 00000008h
SERVICE_ACCEPT_NETBINDCHANGE   equ 00000010h

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service Control Manager object specific access types
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SC_MANAGER_CONNECT             equ 0001h
SC_MANAGER_CREATE_SERVICE      equ 0002h
SC_MANAGER_ENUMERATE_SERVICE   equ 0004h
SC_MANAGER_LOCK                equ 0008h
SC_MANAGER_QUERY_LOCK_STATUS   equ 0010h
SC_MANAGER_MODIFY_BOOT_CONFIG  equ 0020h

SC_MANAGER_ALL_ACCESS          equ STANDARD_RIGHTS_REQUIRED or SC_MANAGER_CONNECT or SC_MANAGER_CREATE_SERVICE or SC_MANAGER_ENUMERATE_SERVICE or SC_MANAGER_LOCK or SC_MANAGER_QUERY_LOCK_STATUS or SC_MANAGER_MODIFY_BOOT_CONFIG

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service object specific access type
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_QUERY_CONFIG           equ 0001h
SERVICE_CHANGE_CONFIG          equ 0002h
SERVICE_QUERY_STATUS           equ 0004h
SERVICE_ENUMERATE_DEPENDENTS   equ 0008h
SERVICE_START                  equ 0010h
SERVICE_STOP                   equ 0020h
SERVICE_PAUSE_CONTINUE         equ 0040h
SERVICE_INTERROGATE            equ 0080h
SERVICE_USER_DEFINED_CONTROL   equ 0100h

SERVICE_ALL_ACCESS             equ STANDARD_RIGHTS_REQUIRED or SERVICE_QUERY_CONFIG or SERVICE_CHANGE_CONFIG or SERVICE_QUERY_STATUS or SERVICE_ENUMERATE_DEPENDENTS or SERVICE_START or SERVICE_STOP or SERVICE_PAUSE_CONTINUE or SERVICE_INTERROGATE or SERVICE_USER_DEFINED_CONTROL


;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Info levels for ChangeServiceConfig2 and QueryServiceConfig2
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_CONFIG_DESCRIPTION     1
SERVICE_CONFIG_FAILURE_ACTIONS 2

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service description string
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_DESCRIPTION STRUCT
    LPSTR       lpDescription;
SERVICE_DESCRIPTION ENDS
LPSERVICE_DESCRIPTION typedef PTR SERVICE_DESCRIPTION

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Actions to take on service failure
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

;typedef enum _SC_ACTION_TYPE {
        SC_ACTION_NONE          equ 0
        SC_ACTION_RESTART       equ 1
        SC_ACTION_REBOOT        equ 2
        SC_ACTION_RUN_COMMAND   equ 3

SC_ACTION STRUCT
	Type	DWORD	?	; SC_ACTION_TYPE
	Delay	DWORD	?
SC_ACTION ENDS
LPSC_ACTION typedef PTR SC_ACTION

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Handle Types
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SC_HANDLE typedef DWORD
LPSC_HANDLE typedef PTR DWORD
SERVICE_STATUS_HANDLE typedef DWORD

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service Status Structure
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_STATUS STRUCT
	dwServiceType				DWORD	?
	dwCurrentState				DWORD	?
	dwControlsAccepted			DWORD	?
	dwWin32ExitCode				DWORD	?
	dwServiceSpecificExitCode	DWORD	?
	dwCheckPoint				DWORD	?
	dwWaitHint					DWORD	?
SERVICE_STATUS ENDS
LPSERVICE_STATUS typedef PTR SERVICE_STATUS

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service Status Enumeration Structure
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

ENUM_SERVICE_STATUS STRUCT
    LPSTR          lpServiceName;
    LPSTR          lpDisplayName;
    SERVICE_STATUS ServiceStatus;
ENUM_SERVICE_STATUS ENDS
LPENUM_SERVICE_STATUS typedef PTR ENUM_SERVICE_STATUS

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Structures for the Lock API functions
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SC_LOCK typedef DWORD

QUERY_SERVICE_LOCK_STATUS STRUCT
    DWORD   fIsLocked;
    LPSTR   lpLockOwner;
    DWORD   dwLockDuration;
QUERY_SERVICE_LOCK_STATUS ENDS
LPQUERY_SERVICE_LOCK_STATUS typedef PTR QUERY_SERVICE_LOCK_STATUS

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Query Service Configuration Structure
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

QUERY_SERVICE_CONFIG STRUCT
	dwServiceType		DWORD	?
	dwStartType			DWORD	?
	dwErrorControl		DWORD	?
	lpBinaryPathName	DWORD	?	; LPSTR
	lpLoadOrderGroup	DWORD	?	; LPSTR
	dwTagId				DWORD	?
	lpDependencies		DWORD	?	; LPSTR
	lpServiceStartName	DWORD	?	; LPSTR
	lpDisplayName		DWORD	?	; LPSTR
QUERY_SERVICE_CONFIG ENDS
LPQUERY_SERVICE_CONFIG typedef PTR QUERY_SERVICE_CONFIG

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
; Service Start Table
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

SERVICE_TABLE_ENTRY STRUCT
	lpServiceName		DWORD	?	; LPSTR
	lpServiceProc		DWORD	?	; LPSERVICE_MAIN_FUNCTIONA
SERVICE_TABLE_ENTRY ENDS
LPSERVICE_TABLE_ENTRY typedef PTR SERVICE_TABLE_ENTRY

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -