|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| No
| Win32s
| No
| Import Library
| -
| Header File
| winsvc.h
| Unicode
| No
| Platform Notes
| None
|
|
|
SERVICE_STATUS
The
SERVICE_STATUS structure contains information about a service. The
ControlService,
EnumDependentServices,
EnumServicesStatus, and
QueryServiceStatus functions use this structure to return information about a service. A service
uses this structure in the
SetServiceStatus function to report its current status to the service control manager.
typedef struct _SERVICE_STATUS { // ss
DWORD dwServiceType;
DWORD dwCurrentState;
DWORD dwControlsAccepted;
DWORD dwWin32ExitCode;
DWORD dwServiceSpecificExitCode;
DWORD dwCheckPoint;
DWORD dwWaitHint;
} SERVICE_STATUS, *LPSERVICE_STATUS;
Members
dwServiceType
The value returned includes one of the following service type flags to
indicate the type of service. In addition, for a SERVICE_WIN32 service, the
SERVICE_INTERACTIVE_PROCESS flag might be set, indicating that the service process can
interact with the desktop.
Value
| Meaning
|
SERVICE_WIN32_OWN_PROCESS
| A service type flag that indicates a Win32 service that runs in its own
process.
|
SERVICE_WIN32_SHARE_PROCESS
| A service type flag that indicates a Win32 service that shares a process with
other services.
|
SERVICE_KERNEL_DRIVER
| A service type flag that indicates a Windows NT device driver.
|
SERVICE_FILE_SYSTEM_DRIVER
| A service type flag that indicates a Windows NT file system driver.
|
SERVICE_INTERACTIVE_PROCESS
| A flag that indicates a Win32 service process that can interact with the
desktop.
|
dwCurrentState
Indicates the current state of the service. One of the following values is
specified:
Value
| Meaning
|
SERVICE_STOPPED
| The service is not running.
|
SERVICE_START_PENDING
| The service is starting.
|
SERVICE_STOP_PENDING
| The service is stopping.
|
SERVICE_RUNNING
| The service is running.
|
SERVICE_CONTINUE_PENDING
| The service continue is pending.
|
SERVICE_PAUSE_PENDING
| The service pause is pending.
|
SERVICE_PAUSED
| The service is paused.
|
dwControlsAccepted
Specifies the control codes that the service will accept and process. A user
interface process can control a service by specifying a control command in the
ControlService function. By default, all services accept the SERVICE_CONTROL_INTERROGATE
value. Any or all of the following flags can be specified to enable the other
control codes.
| The service can be stopped. This enables the SERVICE_CONTROL_STOP value.
|
SERVICE_ACCEPT_PAUSE_CONTINUE
|
|
| The service can be paused and continued. This enables the
SERVICE_CONTROL_PAUSE and SERVICE_CONTROL_CONTINUE values.
|
| The service is notified when system shutdown occurs. This enables the system
to send a SERVICE_CONTROL_SHUTDOWN value to the service. The ControlService function cannot send this control code.
|
dwWin32ExitCode
Specifies a Win32 error code that the service uses to report an error that
occurs when it is starting or stopping. To return an error code specific to the
service, the service must set this value to ERROR_SERVICE_SPECIFIC_ERROR to
indicate that the
dwServiceSpecificExitCode member contains the error code. The service should set this value to NO_ERROR
when it is running and on normal termination.
dwServiceSpecificExitCode
Specifies a service specific error code that the service returns when an error
occurs while the service is starting or stopping. This value is ignored unless
the
dwWin32ExitCode member is set to ERROR_SERVICE_SPECIFIC_ERROR.
dwCheckPoint
Specifies a value that the service increments periodically to report its
progress during a lengthy start, stop, or continue operation. For example, the
service should increment this value as it completes each step of its initialization
when it is starting up. The user interface program that invoked the operation
on the service uses this value to track the progress of the service during a
lengthy operation. This value is not valid and should be zero when the service
does not have a start, stop, or continue operation pending.
dwWaitHint
Specifies an estimate of the amount of time, in milliseconds, that the service
expects a pending start, stop, or continue operation to take before the
service makes its next call to the
SetServiceStatus function with either an incremented
dwCheckPoint value or a change in
dwCurrentState. If the amount of time specified by
dwWaitHint passes, and
dwCheckPoint has not been incremented, or
dwCurrentState has not changed, the service control manager or service control program can
assume that an error has occurred.
See Also
ControlService,
EnumDependentServices,
EnumServicesStatus,
QueryServiceStatus,
SetServiceStatus
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database