Alistair Leslie-Hughes : setupapi: Added CM_Request_Device_EjectA/W stub.
Alexandre Julliard
julliard at winehq.org
Thu Mar 7 16:27:59 CST 2019
Module: wine
Branch: master
Commit: 343e486e83fc9667bfeac22519f1b0c31e29c1f5
URL: https://source.winehq.org/git/wine.git/?a=commit;h=343e486e83fc9667bfeac22519f1b0c31e29c1f5
Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Wed Mar 6 21:25:16 2019 +0100
setupapi: Added CM_Request_Device_EjectA/W stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45879
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Vijay Kiran Kamuju <infyquest at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/setupapi/setupapi.spec | 4 ++--
dlls/setupapi/stubs.c | 18 ++++++++++++++++++
include/cfgmgr32.h | 20 ++++++++++++++++++++
3 files changed, 40 insertions(+), 2 deletions(-)
diff --git a/dlls/setupapi/setupapi.spec b/dlls/setupapi/setupapi.spec
index cea6dac..d633211 100644
--- a/dlls/setupapi/setupapi.spec
+++ b/dlls/setupapi/setupapi.spec
@@ -168,8 +168,8 @@
@ stub CM_Remove_SubTree_Ex
@ stub CM_Remove_Unmarked_Children
@ stub CM_Remove_Unmarked_Children_Ex
-@ stub CM_Request_Device_EjectA
-@ stub CM_Request_Device_EjectW
+@ stdcall CM_Request_Device_EjectA(ptr ptr ptr long long)
+@ stdcall CM_Request_Device_EjectW(ptr ptr ptr long long)
@ stub CM_Request_Eject_PC
@ stub CM_Reset_Children_Marks
@ stub CM_Reset_Children_Marks_Ex
diff --git a/dlls/setupapi/stubs.c b/dlls/setupapi/stubs.c
index 4994ca4..4db32dd 100644
--- a/dlls/setupapi/stubs.c
+++ b/dlls/setupapi/stubs.c
@@ -696,3 +696,21 @@ BOOL WINAPI SetupDiEnumDriverInfoW(HDEVINFO DeviceInfoSet, PSP_DEVINFO_DATA Devi
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return FALSE;
}
+
+/***********************************************************************
+ * CM_Request_Device_EjectA (SETUPAPI.@)
+ */
+CONFIGRET WINAPI CM_Request_Device_EjectA(DEVINST dev, PPNP_VETO_TYPE type, LPSTR name, ULONG length, ULONG flags)
+{
+ FIXME("(0x%08x, %p, %p, %u, 0x%08x) stub\n", dev, type, name, length, flags);
+ return CR_SUCCESS;
+}
+
+/***********************************************************************
+ * CM_Request_Device_EjectW (SETUPAPI.@)
+ */
+CONFIGRET WINAPI CM_Request_Device_EjectW(DEVINST dev, PPNP_VETO_TYPE type, LPWSTR name, ULONG length, ULONG flags)
+{
+ FIXME("(0x%08x, %p, %p, %u, 0x%08x) stub\n", dev, type, name, length, flags);
+ return CR_SUCCESS;
+}
diff --git a/include/cfgmgr32.h b/include/cfgmgr32.h
index da09115..15340a6 100644
--- a/include/cfgmgr32.h
+++ b/include/cfgmgr32.h
@@ -175,6 +175,23 @@ typedef CHAR *DEVNODEID_A, *DEVINSTID_A;
typedef WCHAR *DEVNODEID_W, *DEVINSTID_W;
typedef ULONG REGDISPOSITION;
+typedef enum _PNP_VETO_TYPE
+{
+ PNP_VetoTypeUnknown,
+ PNP_VetoLegacyDevice,
+ PNP_VetoPendingClose,
+ PNP_VetoWindowsApp,
+ PNP_VetoWindowsService,
+ PNP_VetoOutstandingOpen,
+ PNP_VetoDevice,
+ PNP_VetoDriver,
+ PNP_VetoIllegalDeviceRequest,
+ PNP_VetoInsufficientPower,
+ PNP_VetoNonDisableable,
+ PNP_VetoLegacyDriver,
+ PNP_VetoInsufficientRights
+} PNP_VETO_TYPE, *PPNP_VETO_TYPE;
+
DECL_WINELIB_CFGMGR32_TYPE_AW(DEVNODEID)
DECL_WINELIB_CFGMGR32_TYPE_AW(DEVINSTID)
@@ -213,6 +230,9 @@ CMAPI CONFIGRET WINAPI CM_Locate_DevNodeW(PDEVINST,DEVINSTID_W,ULONG);
#define CM_Locate_DevNode WINELIB_NAME_AW(CM_Locate_DevNode)
CMAPI CONFIGRET WINAPI CM_Open_DevNode_Key(DEVINST dnDevInst, REGSAM access, ULONG ulHardwareProfile,
REGDISPOSITION disposition, PHKEY phkDevice, ULONG ulFlags);
+CMAPI CONFIGRET WINAPI CM_Request_Device_EjectA(DEVINST dev, PPNP_VETO_TYPE type, LPSTR name, ULONG length, ULONG flags);
+CMAPI CONFIGRET WINAPI CM_Request_Device_EjectW(DEVINST dev, PPNP_VETO_TYPE type, LPWSTR name, ULONG length, ULONG flags);
+#define CM_Request_Device_Eject WINELIB_NAME_AW(CM_Get_Device_ID_List_Ex)
#ifdef __cplusplus
}
More information about the wine-cvs
mailing list