/*\r
- * Plug and Play Manager interface definition\r
+ * Plug and Play Manager RPC interface definition\r
*/\r
\r
#define WORD unsigned short\r
+#define DWORD unsigned long\r
#define CONFIGRET unsigned long\r
+#define PBOOL unsigned long *\r
\r
[\r
uuid (809F4e40-A03D-11CE-8F69-08003E30051B),\r
]\r
interface pnp\r
{\r
-// unsigned long PNP_GetRootDeviceInstance(handle_t BindingHandle,\r
-// [out, string, size_is(Length)] wchar_t *DeviceInstance,\r
-// [in] unsigned long Length);\r
+ /* Function 0 */\r
+// CONFIGRET PNP_Unknown0(handle_t BindingHandle);\r
+\r
+ /* Function 1 */\r
+// CONFIGRET PNP_Unknown1(handle_t BindingHandle);\r
+\r
+ /* Function 2 */\r
CONFIGRET PNP_GetVersion(handle_t BindingHandle,\r
[out] WORD *Version);\r
+\r
+ /* Function 3 */\r
+ CONFIGRET PNP_GetGlobalState(handle_t BindingHandle,\r
+ [out] unsigned long *State,\r
+ [in] unsigned long Flags);\r
+\r
+ /* Function 6 */\r
+ CONFIGRET PNP_ValidateDeviceInstance(handle_t BindingHandle,\r
+ [in, string] wchar_t *DeviceInstance,\r
+ [in] DWORD Flags);\r
+\r
+ /* Function 7 */\r
+ CONFIGRET PNP_GetRootDeviceInstance(handle_t BindingHandle,\r
+ [out, string, size_is(Length)] wchar_t *DeviceInstance,\r
+ [in] DWORD Length);\r
+\r
+ /* Function 8 */\r
+ cpp_quote("#define PNP_DEVICE_PARENT 1")\r
+ cpp_quote("#define PNP_DEVICE_CHILD 2")\r
+ cpp_quote("#define PNP_DEVICE_SIBLING 3")\r
+ CONFIGRET PNP_GetRelatedDeviceInstance(handle_t BindingHandle,\r
+ [in] DWORD Relationship,\r
+ [in, string] wchar_t *DeviceId,\r
+ [out, string, size_is(Length)] wchar_t *RelatedDeviceId,\r
+ [in] DWORD Length,\r
+ [in] DWORD Flags);\r
+\r
+ /* Function 9 */\r
+ cpp_quote("#define PNP_BRANCH_ENUM 1")\r
+ cpp_quote("#define PNP_BRANCH_CLASS 2")\r
+ CONFIGRET PNP_EnumerateSubKeys(handle_t BindingHandle,\r
+ [in] unsigned long Branch,\r
+ [in] unsigned long Index,\r
+ [out, string, size_is(Length)] wchar_t *Buffer,\r
+ [in] unsigned long Length,\r
+ [out] unsigned long *RequiredLength,\r
+ [in] DWORD Flags);\r
+\r
+ /* Function 10 */\r
+// CONFIGRET PNP_GetDeviceList(handle_t BindingHandle,\r
+// [in, unique, string] wchar_t *Filter,\r
+// [out, string, size_is(*Length)] unsigned char *Buffer\r
+// [in, out] unsigned long *Length,\r
+// [in] DWORD Flags);\r
+\r
+ /* Function 11 */\r
+ CONFIGRET PNP_GetDeviceListSize(handle_t BindingHandle,\r
+ [in, unique, string] wchar_t *Filter,\r
+ [out] unsigned long *Length,\r
+ [in] DWORD Flags);\r
+\r
+ /* Function 12 */\r
+ CONFIGRET PNP_GetDepth(handle_t BindingHandle,\r
+ [in, string] wchar_t *DeviceInstance,\r
+ [out] unsigned long *Depth,\r
+ [in] DWORD Flags);\r
+\r
+ /* Function 13 */\r
+ CONFIGRET PNP_GetDeviceRegProp(handle_t BindingHandle,\r
+ [in, string] wchar_t *DeviceInstance,\r
+ [in] unsigned long Property,\r
+ [in, out] unsigned long *DataType,\r
+ [out, size_is(*TransferLen)] char *Buffer,\r
+ [in, out] unsigned long *TransferLen,\r
+ [in, out] unsigned long *Length,\r
+ [in] DWORD Flags);\r
+\r
+ /* Function 14 */\r
+ CONFIGRET PNP_SetDeviceRegProp(handle_t BindingHandle,\r
+ [in, string] wchar_t *DeviceId,\r
+ [in] unsigned long Property,\r
+ [in] unsigned long DataType,\r
+ [in, size_is(Length)] char *Buffer,\r
+ [in] unsigned long Length,\r
+ [in] unsigned long Flags);\r
+\r
+ /* Function 16 */\r
+ CONFIGRET PNP_CreateKey(handle_t BindingHandle,\r
+ [in, string] wchar_t *SubKey,\r
+ [in] unsigned long DesiredAccess,\r
+ [in] unsigned long Flags);\r
+\r
+ /* Function 19 */\r
+ CONFIGRET PNP_GetClassName(handle_t BindingHandle,\r
+ [in, string] wchar_t *ClassGuid,\r
+ [out, string, size_is(*Length)] wchar_t *Buffer,\r
+ [in, out] unsigned long *Length,\r
+ [in] unsigned long Flags);\r
+\r
+ /* Function 20 */\r
+ CONFIGRET PNP_DeleteClassKey(handle_t BindingHandle,\r
+ [in, string] wchar_t *ClassGuid,\r
+ [in] unsigned long Flags);\r
+\r
+ /* Function 30 */\r
+ CONFIGRET PNP_GetDeviceStatus(handle_t BindingHandle,\r
+ [in, string] wchar_t *DeviceInstance,\r
+ [out] unsigned long *Status,\r
+ [out] unsigned long *Problem,\r
+ [in] DWORD Flags);\r
+\r
+ /* Function 31 */\r
+ CONFIGRET PNP_SetDeviceProblem(handle_t BindingHandle,\r
+ [in, string] wchar_t *DeviceInstance,\r
+ [in] unsigned long Problem,\r
+ [in] DWORD Flags);\r
+\r
+ /* Function 38 */\r
+ CONFIGRET PNP_IsDockStationPresent(handle_t BindingHandle,\r
+ [out]PBOOL Present);\r
+\r
+ /* Function 39 */\r
+ CONFIGRET PNP_RequestEjectPC(handle_t BindingHandle);\r
}\r