[SERVICES] Define the RI_ScQueryServiceTagInfo RPC call

All the definitions are taken from ProcessHacker:
https://github.com/processhacker/processhacker/blob/master/phnt/include/subprocesstag.h
This commit is contained in:
Pierre Schweitzer 2018-12-30 11:45:08 +01:00
parent 4f37d96857
commit dfaee51f98
No known key found for this signature in database
GPG key ID: 7545556C3D585B0B
2 changed files with 34 additions and 4 deletions

View file

@ -6580,8 +6580,11 @@ RCreateServiceWOW64W(
/* Function 46 */ /* Function 46 */
DWORD DWORD
WINAPI WINAPI
RQueryServiceTagInfo( RI_ScQueryServiceTagInfo(
handle_t BindingHandle) /* FIXME */ SC_RPC_HANDLE hSCManager,
TAG_INFO_LEVEL dwInfoLevel,
PTAG_INFO_NAME_FROM_TAG_IN_PARAMS * lpInParams,
PTAG_INFO_NAME_FROM_TAG_OUT_PARAMS * lpOutParams)
{ {
UNIMPLEMENTED; UNIMPLEMENTED;
return ERROR_CALL_NOT_IMPLEMENTED; return ERROR_CALL_NOT_IMPLEMENTED;

View file

@ -296,6 +296,30 @@ typedef struct _STRING_PTRSW {
[string] LPWSTR StringPtr; [string] LPWSTR StringPtr;
} STRING_PTRSW, *PSTRING_PTRSW, *LPSTRING_PTRSW; } STRING_PTRSW, *PSTRING_PTRSW, *LPSTRING_PTRSW;
typedef [v1_enum] enum _TAG_INFO_LEVEL {
TagInfoLevelNameFromTag = 1,
} TAG_INFO_LEVEL;
typedef [v1_enum] enum _TAG_TYPE {
TagTypeService = 1,
} TAG_TYPE;
typedef struct _TAG_INFO_NAME_FROM_TAG_IN_PARAMS {
DWORD dwPid;
DWORD dwTag;
} TAG_INFO_NAME_FROM_TAG_IN_PARAMS, *PTAG_INFO_NAME_FROM_TAG_IN_PARAMS;
typedef struct _TAG_INFO_NAME_FROM_TAG_OUT_PARAMS {
TAG_TYPE TagType;
LPWSTR pszName;
} TAG_INFO_NAME_FROM_TAG_OUT_PARAMS, *PTAG_INFO_NAME_FROM_TAG_OUT_PARAMS;
typedef struct _TAG_INFO_NAME_FROM_TAG
{
TAG_INFO_NAME_FROM_TAG_IN_PARAMS InParams;
TAG_INFO_NAME_FROM_TAG_OUT_PARAMS OutParams;
} TAG_INFO_NAME_FROM_TAG, *PTAG_INFO_NAME_FROM_TAG;
[ [
uuid(367abb81-9844-35f1-ad32-98f038001003), uuid(367abb81-9844-35f1-ad32-98f038001003),
version(2.0), version(2.0),
@ -798,8 +822,11 @@ interface svcctl
/* Function 46 */ /* Function 46 */
DWORD DWORD
__stdcall __stdcall
RQueryServiceTagInfo( RI_ScQueryServiceTagInfo(
[in] handle_t BindingHandle); /* FIXME */ [in] SC_RPC_HANDLE hSCManager,
[in] TAG_INFO_LEVEL dwInfoLevel,
[in] PTAG_INFO_NAME_FROM_TAG_IN_PARAMS * lpInParams,
[out] PTAG_INFO_NAME_FROM_TAG_OUT_PARAMS * lpOutParams);
/* Function 47 */ /* Function 47 */
DWORD DWORD