/* 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 { /******************/ /* Function: 0x00 */ [todo] WERROR PNP_Disconnect(); /******************/ /* Function: 0x01 */ [todo] WERROR PNP_Connect(); /******************/ /* Function: 0x02 */ WERROR PNP_GetVersion( [out,ref] uint16 *version ); /******************/ /* Function: 0x03 */ [todo] WERROR PNP_GetGlobalState(); /******************/ /* Function: 0x04 */ [todo] WERROR PNP_InitDetection(); /******************/ /* Function: 0x05 */ [todo] WERROR PNP_ReportLogOn(); /******************/ /* Function: 0x06 */ WERROR PNP_ValidateDeviceInstance( [in,ref] [string,charset(UTF16)] uint16 *devicepath, [in] uint32 flags ); /******************/ /* Function: 0x07 */ [todo] WERROR PNP_GetRootDeviceInstance(); /******************/ /* Function: 0x08 */ [todo] WERROR PNP_GetRelatedDeviceInstance(); /******************/ /* Function: 0x09 */ [todo] WERROR PNP_EnumerateSubKeys(); /******************/ /* Function: 0x0a */ 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, [in] uint32 flags ); /******************/ /* Function: 0x0b */ WERROR PNP_GetDeviceListSize( [in,unique] [string,charset(UTF16)] uint16 *devicename, [out,ref] uint32 *size, [in] uint32 flags ); /******************/ /* Function: 0x0c */ [todo] WERROR PNP_GetDepth(); /******************/ /* Function: 0x0d */ const int DEV_REGPROP_DESC = 1; WERROR PNP_GetDeviceRegProp( [in,ref] [string,charset(UTF16)] uint16 *devicepath, [in] uint32 property, [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, [in] uint32 flags ); /******************/ /* Function: 0x0e */ [todo] WERROR PNP_SetDeviceRegProp(); /******************/ /* Function: 0x0f */ [todo] WERROR PNP_GetClassInstance(); /******************/ /* Function: 0x10 */ [todo] WERROR PNP_CreateKey(); /******************/ /* Function: 0x11 */ [todo] WERROR PNP_DeleteRegistryKey(); /******************/ /* Function: 0x12 */ [todo] WERROR PNP_GetClassCount(); /******************/ /* Function: 0x13 */ [todo] WERROR PNP_GetClassName(); /******************/ /* Function: 0x14 */ [todo] WERROR PNP_DeleteClassKey(); /******************/ /* Function: 0x15 */ [todo] WERROR PNP_GetInterfaceDeviceAlias(); /******************/ /* Function: 0x16 */ [todo] WERROR PNP_GetInterfaceDeviceList(); /******************/ /* Function: 0x17 */ [todo] WERROR PNP_GetInterfaceDeviceListSize(); /******************/ /* Function: 0x18 */ [todo] WERROR PNP_RegisterDeviceClassAssociation(); /******************/ /* Function: 0x19 */ [todo] WERROR PNP_UnregisterDeviceClassAssociation(); /******************/ /* Function: 0x1a */ [todo] WERROR PNP_GetClassRegProp(); /******************/ /* Function: 0x1b */ [todo] WERROR PNP_SetClassRegProp(); /******************/ /* Function: 0x1c */ [todo] WERROR PNP_CreateDevInst(); /******************/ /* Function: 0x1d */ [todo] WERROR PNP_DeviceInstanceAction(); /******************/ /* Function: 0x1e */ [todo] WERROR PNP_GetDeviceStatus(); /******************/ /* Function: 0x1f */ [todo] WERROR PNP_SetDeviceProblem(); /******************/ /* Function: 0x20 */ [todo] WERROR PNP_DisableDevInst(); /******************/ /* Function: 0x21 */ [todo] WERROR PNP_UninstallDevInst(); /******************/ /* Function: 0x22 */ [todo] WERROR PNP_AddID(); /******************/ /* Function: 0x23 */ [todo] WERROR PNP_RegisterDriver(); /******************/ /* Function: 0x24 */ [todo] WERROR PNP_QueryRemove(); /******************/ /* Function: 0x25 */ [todo] WERROR PNP_RequestDeviceEject(); /******************/ /* Function: 0x26 */ [todo] WERROR PNP_IsDockStationPresent(); /******************/ /* Function: 0x27 */ [todo] WERROR PNP_RequestEjectPC(); /******************/ /* Function: 0x28 */ WERROR PNP_HwProfFlags( [in] uint32 action, [in,ref] [string,charset(UTF16)] uint16 *devicepath, [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 name_length, [in] uint32 flags ); /******************/ /* Function: 0x29 */ typedef struct { 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 size, [in] uint32 flags ); /******************/ /* Function: 0x2a */ [todo] WERROR PNP_AddEmptyLogConf(); /******************/ /* Function: 0x2b */ [todo] WERROR PNP_FreeLogConf(); /******************/ /* Function: 0x2c */ [todo] WERROR PNP_GetFirstLogConf(); /******************/ /* Function: 0x2d */ [todo] WERROR PNP_GetNextLogConf(); /******************/ /* Function: 0x2e */ [todo] WERROR PNP_GetLogConfPriority(); /******************/ /* Function: 0x2f */ [todo] WERROR PNP_AddResDes(); /******************/ /* Function: 0x30 */ [todo] WERROR PNP_FreeResDes(); /******************/ /* Function: 0x31 */ [todo] WERROR PNP_GetNextResDes(); /******************/ /* Function: 0x32 */ [todo] WERROR PNP_GetResDesData(); /******************/ /* Function: 0x33 */ [todo] WERROR PNP_GetResDesDataSize(); /******************/ /* Function: 0x34 */ [todo] WERROR PNP_ModifyResDes(); /******************/ /* Function: 0x35 */ [todo] WERROR PNP_DetectResourceLimit(); /******************/ /* Function: 0x36 */ [todo] WERROR PNP_QueryResConfList(); /******************/ /* Function: 0x37 */ [todo] WERROR PNP_SetHwProf(); /******************/ /* Function: 0x38 */ [todo] WERROR PNP_QueryArbitratorFreeData(); /******************/ /* Function: 0x39 */ [todo] WERROR PNP_QueryArbitratorFreeSize(); /******************/ /* Function: 0x3a */ [todo] WERROR PNP_RunDetection(); /******************/ /* Function: 0x3b */ [todo] WERROR PNP_RegisterNotification(); /******************/ /* Function: 0x3c */ [todo] WERROR PNP_UnregisterNotification(); /******************/ /* Function: 0x3d */ [todo] WERROR PNP_GetCustomDevProp(); /******************/ /* Function: 0x3e */ [todo] WERROR PNP_GetVersionInternal(); /******************/ /* Function: 0x3f */ [todo] WERROR PNP_GetBlockedDriverInfo(); /******************/ /* Function: 0x40 */ [todo] WERROR PNP_GetServerSideDeviceInstallFlags(); }