2006-09-18 23:02:06 +04:00
/*
plug and play services
*/
[
uuid("8d9f4e40-a03d-11ce-8f69-08003e30051b"),
version(1.0),
helpstring("Plug and Play services")
]
interface ntsvcs
{
2008-02-18 01:13:38 +03:00
/******************/
/* Function: 0x00 */
WERROR PNP_Disconnect();
/******************/
/* Function: 0x01 */
WERROR PNP_Connect();
/******************/
/* Function: 0x02 */
2008-02-18 01:14:47 +03:00
WERROR PNP_GetVersion(
[out,ref] uint16 *version
);
2008-02-18 01:13:38 +03:00
/******************/
/* Function: 0x03 */
WERROR PNP_GetGlobalState();
/******************/
/* Function: 0x04 */
WERROR PNP_InitDetection();
/******************/
/* Function: 0x05 */
WERROR PNP_ReportLogOn();
/******************/
/* Function: 0x06 */
2008-02-18 01:40:14 +03:00
WERROR PNP_ValidateDeviceInstance(
[in,ref] [string,charset(UTF16)] uint16 *devicepath,
[in] uint32 flags
);
2008-02-18 01:13:38 +03:00
/******************/
/* Function: 0x07 */
WERROR PNP_GetRootDeviceInstance();
/******************/
/* Function: 0x08 */
WERROR PNP_GetRelatedDeviceInstance();
/******************/
/* Function: 0x09 */
WERROR PNP_EnumerateSubKeys();
/******************/
/* Function: 0x0a */
WERROR PNP_GetDeviceList();
/******************/
/* Function: 0x0b */
2008-02-18 02:22:45 +03:00
WERROR PNP_GetDeviceListSize(
[in,unique] [string,charset(UTF16)] uint16 *devicename,
[out,ref] uint32 *size,
[in] uint32 flags
);
2008-02-18 01:13:38 +03:00
/******************/
/* Function: 0x0c */
WERROR PNP_GetDepth();
/******************/
/* Function: 0x0d */
2008-02-18 04:37:26 +03:00
const int DEV_REGPROP_DESC = 1;
WERROR PNP_GetDeviceRegProp(
[in,ref] [string,charset(UTF16)] uint16 *devicepath,
[in] uint32 property,
[in,out,ref] uint32 *unknown1,
[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 unknown3
);
2008-02-18 01:13:38 +03:00
/******************/
/* Function: 0x0e */
WERROR PNP_SetDeviceRegProp();
/******************/
/* Function: 0x0f */
WERROR PNP_GetClassInstance();
/******************/
/* Function: 0x10 */
WERROR PNP_CreateKey();
/******************/
/* Function: 0x11 */
WERROR PNP_DeleteRegistryKey();
/******************/
/* Function: 0x12 */
WERROR PNP_GetClassCount();
/******************/
/* Function: 0x13 */
WERROR PNP_GetClassName();
/******************/
/* Function: 0x14 */
WERROR PNP_DeleteClassKey();
/******************/
/* Function: 0x15 */
WERROR PNP_GetInterfaceDeviceAlias();
/******************/
/* Function: 0x16 */
WERROR PNP_GetInterfaceDeviceList();
/******************/
/* Function: 0x17 */
WERROR PNP_GetInterfaceDeviceListSize();
/******************/
/* Function: 0x18 */
WERROR PNP_RegisterDeviceClassAssociation();
/******************/
/* Function: 0x19 */
WERROR PNP_UnregisterDeviceClassAssociation();
/******************/
/* Function: 0x1a */
WERROR PNP_GetClassRegProp();
/******************/
/* Function: 0x1b */
WERROR PNP_SetClassRegProp();
/******************/
/* Function: 0x1c */
WERROR PNP_CreateDevInst();
/******************/
/* Function: 0x1d */
WERROR PNP_DeviceInstanceAction();
/******************/
/* Function: 0x1e */
WERROR PNP_GetDeviceStatus();
/******************/
/* Function: 0x1f */
WERROR PNP_SetDeviceProblem();
/******************/
/* Function: 0x20 */
WERROR PNP_DisableDevInst();
/******************/
/* Function: 0x21 */
WERROR PNP_UninstallDevInst();
/******************/
/* Function: 0x22 */
WERROR PNP_AddID();
/******************/
/* Function: 0x23 */
WERROR PNP_RegisterDriver();
/******************/
/* Function: 0x24 */
WERROR PNP_QueryRemove();
/******************/
/* Function: 0x25 */
WERROR PNP_RequestDeviceEject();
/******************/
/* Function: 0x26 */
WERROR PNP_IsDockStationPresent();
/******************/
/* Function: 0x27 */
WERROR PNP_RequestEjectPC();
/******************/
/* Function: 0x28 */
2008-02-18 03:06:08 +03:00
WERROR PNP_HwProfFlags(
[in] uint32 unknown1,
[in,ref] [string,charset(UTF16)] uint16 *devicepath,
[in] uint32 unknown2,
[in,out,ref] uint32 *unknown3,
[in,out,unique] uint16 *unknown4,
[in,unique] [string,charset(UTF16)] uint16 *unknown5,
[out,unique] [string,charset(UTF16)] uint16 **unknown5a,
[in] uint32 unknown6,
[in] uint32 unknown7
);
2008-02-18 01:13:38 +03:00
/******************/
/* Function: 0x29 */
2008-02-18 03:29:13 +03:00
typedef struct {
uint32 unknown1;
uint16 unknown2[160];
uint32 unknown3;
} PNP_HwProfInfo;
WERROR PNP_GetHwProfInfo(
[in] uint32 idx,
[in,out,ref] PNP_HwProfInfo *info,
[in] uint32 unknown1,
[in] uint32 unknown2
);
2008-02-18 01:13:38 +03:00
/******************/
/* Function: 0x2a */
WERROR PNP_AddEmptyLogConf();
/******************/
/* Function: 0x2b */
WERROR PNP_FreeLogConf();
/******************/
/* Function: 0x2c */
WERROR PNP_GetFirstLogConf();
/******************/
/* Function: 0x2d */
WERROR PNP_GetNextLogConf();
/******************/
/* Function: 0x2e */
WERROR PNP_GetLogConfPriority();
/******************/
/* Function: 0x2f */
WERROR PNP_AddResDes();
/******************/
/* Function: 0x30 */
WERROR PNP_FreeResDes();
/******************/
/* Function: 0x31 */
WERROR PNP_GetNextResDes();
/******************/
/* Function: 0x32 */
WERROR PNP_GetResDesData();
/******************/
/* Function: 0x33 */
WERROR PNP_GetResDesDataSize();
/******************/
/* Function: 0x34 */
WERROR PNP_ModifyResDes();
/******************/
/* Function: 0x35 */
WERROR PNP_DetectResourceLimit();
/******************/
/* Function: 0x36 */
WERROR PNP_QueryResConfList();
/******************/
/* Function: 0x37 */
WERROR PNP_SetHwProf();
/******************/
/* Function: 0x38 */
WERROR PNP_QueryArbitratorFreeData();
/******************/
/* Function: 0x39 */
WERROR PNP_QueryArbitratorFreeSize();
/******************/
/* Function: 0x3a */
WERROR PNP_RunDetection();
/******************/
/* Function: 0x3b */
WERROR PNP_RegisterNotification();
/******************/
/* Function: 0x3c */
WERROR PNP_UnregisterNotification();
/******************/
/* Function: 0x3d */
WERROR PNP_GetCustomDevProp();
/******************/
/* Function: 0x3e */
WERROR PNP_GetVersionInternal();
/******************/
/* Function: 0x3f */
WERROR PNP_GetBlockedDriverInfo();
/******************/
/* Function: 0x40 */
WERROR PNP_GetServerSideDeviceInstallFlags();
2006-09-18 23:02:06 +04:00
}