diff options
Diffstat (limited to 'librpc/idl/ntsvcs.idl')
-rw-r--r-- | librpc/idl/ntsvcs.idl | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/librpc/idl/ntsvcs.idl b/librpc/idl/ntsvcs.idl index 809ead90c3..be7fcdff13 100644 --- a/librpc/idl/ntsvcs.idl +++ b/librpc/idl/ntsvcs.idl @@ -2,9 +2,12 @@ plug and play services */ +import "winreg.idl"; + [ uuid("8d9f4e40-a03d-11ce-8f69-08003e30051b"), version(1.0), + endpoint("ncacn_np:[\\pipe\\ntsvcs]","ncacn_np:[\\pipe\\plugplay]"), helpstring("Plug and Play services") ] interface ntsvcs @@ -67,7 +70,7 @@ interface ntsvcs /******************/ /* Function: 0x0a */ - [todo] WERROR PNP_GetDeviceList( + WERROR PNP_GetDeviceList( [in,unique] [string,charset(UTF16)] uint16 *filter, [out,ref] [size_is(*length),length_is(*length)] uint16 *buffer, [in,out,ref] uint32 *length, @@ -96,7 +99,7 @@ interface ntsvcs WERROR PNP_GetDeviceRegProp( [in,ref] [string,charset(UTF16)] uint16 *devicepath, [in] uint32 property, - [in,out,ref] uint32 *reg_data_type, + [in,out,ref] winreg_Type *reg_data_type, [out,ref] [size_is(*buffer_size)] [length_is(*buffer_size)] uint8 *buffer, [in,out,ref] uint32 *buffer_size, [in,out,ref] uint32 *needed, @@ -237,31 +240,31 @@ interface ntsvcs /* Function: 0x28 */ WERROR PNP_HwProfFlags( - [in] uint32 unknown1, + [in] uint32 action, [in,ref] [string,charset(UTF16)] uint16 *devicepath, - [in] uint32 unknown2, - [in,out,ref] uint32 *unknown3, - [in,out,unique] uint16 *unknown4, + [in] uint32 config, + [in,out,ref] uint32 *profile_flags, + [in,out,unique] uint16 *veto_type, [in,unique] [string,charset(UTF16)] uint16 *unknown5, [out,unique] [string,charset(UTF16)] uint16 **unknown5a, - [in] uint32 unknown6, - [in] uint32 unknown7 + [in] uint32 name_length, + [in] uint32 flags ); /******************/ /* Function: 0x29 */ typedef struct { - uint32 unknown1; - uint16 unknown2[160]; - uint32 unknown3; + uint32 profile_handle; + uint16 friendly_name[80]; + uint32 flags; } PNP_HwProfInfo; WERROR PNP_GetHwProfInfo( [in] uint32 idx, [in,out,ref] PNP_HwProfInfo *info, - [in] uint32 unknown1, - [in] uint32 unknown2 + [in] uint32 size, + [in] uint32 flags ); /******************/ |