windows-nt/Source/XPSP1/NT/base/screg/sc/inc/scwow.h

73 lines
1.6 KiB
C
Raw Normal View History

2020-09-26 03:20:57 -05:00
/*++
Copyright (c) 1992 Microsoft Corporation
Module Name:
scwow.h
Abstract:
Structure definitions for 32/64-bit interop
Author:
Jonathan Schwartz (jschwart) 18-Sep-2000
Revision History:
--*/
#ifndef SCWOW_INCLUDED
#define SCWOW_INCLUDED
//
// Internal structures for the enum functions for 64/32-bit interop
// since the ENUM_SERVICE_STATUS* structures contain two pointers
// and we don't want to pass back structures of an indeterminate
// size. Since the pointer fields are used as offsets only across
// the wire, use these structures to force those fields to be a
// known length (32 bits for compatibility with older clients).
//
typedef struct _ENUM_SERVICE_STATUS_WOW64
{
DWORD dwServiceNameOffset;
DWORD dwDisplayNameOffset;
SERVICE_STATUS ServiceStatus;
}
ENUM_SERVICE_STATUS_WOW64, *LPENUM_SERVICE_STATUS_WOW64;
typedef struct _ENUM_SERVICE_STATUS_PROCESS_WOW64
{
DWORD dwServiceNameOffset;
DWORD dwDisplayNameOffset;
SERVICE_STATUS_PROCESS ServiceStatusProcess;
}
ENUM_SERVICE_STATUS_PROCESS_WOW64, *LPENUM_SERVICE_STATUS_PROCESS_WOW64;
//
// Internal structures for QueryServiceConfig2 for 64/32-bit interop
//
typedef struct _SERVICE_DESCRIPTION_WOW64
{
DWORD dwDescriptionOffset;
}
SERVICE_DESCRIPTION_WOW64, *LPSERVICE_DESCRIPTION_WOW64;
typedef struct _SERVICE_FAILURE_ACTIONS_WOW64
{
DWORD dwResetPeriod;
DWORD dwRebootMsgOffset;
DWORD dwCommandOffset;
DWORD cActions;
DWORD dwsaActionsOffset;
}
SERVICE_FAILURE_ACTIONS_WOW64, *LPSERVICE_FAILURE_ACTIONS_WOW64;
#endif // #ifndef SCWOW_INCLUDED