mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 03:15:43 +00:00
Implement CM_Get_HW_Prof_Flags[_Ex]A/W and add PNP_HwProfFlags stub.
svn path=/trunk/; revision=22391
This commit is contained in:
parent
aabda4b500
commit
1c0c7413bd
7 changed files with 187 additions and 10 deletions
|
@ -1222,6 +1222,27 @@ PNP_RequestEjectPC(handle_t BindingHandle)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Function 40 */
|
||||||
|
CONFIGRET
|
||||||
|
PNP_HwProfFlags(handle_t BindingHandle,
|
||||||
|
unsigned long Action,
|
||||||
|
wchar_t *DeviceId,
|
||||||
|
unsigned long ProfileId,
|
||||||
|
unsigned long *Value, // out
|
||||||
|
unsigned long Flags)
|
||||||
|
{
|
||||||
|
CONFIGRET ret = CR_SUCCESS;
|
||||||
|
|
||||||
|
DPRINT1("PNP_HwProfFlags() called\n");
|
||||||
|
|
||||||
|
ret = CR_CALL_NOT_IMPLEMENTED; /* FIXME */
|
||||||
|
|
||||||
|
DPRINT1("PNP_HwProfFlags() done (returns %lx)\n", ret);
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Function 58 */
|
/* Function 58 */
|
||||||
CONFIGRET
|
CONFIGRET
|
||||||
PNP_RunDetection(handle_t BindingHandle,
|
PNP_RunDetection(handle_t BindingHandle,
|
||||||
|
|
|
@ -117,10 +117,10 @@ CM_Get_Device_ID_Size_Ex@16=SETUPAPI.CM_Get_Device_ID_Size_Ex
|
||||||
;CM_Get_First_Log_Conf_Ex
|
;CM_Get_First_Log_Conf_Ex
|
||||||
CM_Get_Global_State@8=SETUPAPI.CM_Get_Global_State
|
CM_Get_Global_State@8=SETUPAPI.CM_Get_Global_State
|
||||||
CM_Get_Global_State_Ex@12=SETUPAPI.CM_Get_Global_State_Ex
|
CM_Get_Global_State_Ex@12=SETUPAPI.CM_Get_Global_State_Ex
|
||||||
;CM_Get_HW_Prof_FlagsA
|
CM_Get_HW_Prof_FlagsA@16=SETUPAPI.CM_Get_HW_Prof_FlagsA
|
||||||
;CM_Get_HW_Prof_FlagsW
|
CM_Get_HW_Prof_FlagsW@16=SETUPAPI.CM_Get_HW_Prof_FlagsW
|
||||||
;CM_Get_HW_Prof_Flags_ExA
|
CM_Get_HW_Prof_Flags_ExA@20=SETUPAPI.CM_Get_HW_Prof_Flags_ExA
|
||||||
;CM_Get_HW_Prof_Flags_ExW
|
CM_Get_HW_Prof_Flags_ExW@20=SETUPAPI.CM_Get_HW_Prof_Flags_ExW
|
||||||
;CM_Get_Hardware_Profile_InfoA
|
;CM_Get_Hardware_Profile_InfoA
|
||||||
;CM_Get_Hardware_Profile_InfoW
|
;CM_Get_Hardware_Profile_InfoW
|
||||||
;CM_Get_Hardware_Profile_Info_ExA
|
;CM_Get_Hardware_Profile_Info_ExA
|
||||||
|
|
|
@ -1782,6 +1782,102 @@ CONFIGRET WINAPI CM_Get_Global_State_Ex(
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* CM_Get_HW_Prof_FlagsA [SETUPAPI.@]
|
||||||
|
*/
|
||||||
|
CONFIGRET WINAPI CM_Get_HW_Prof_FlagsA(
|
||||||
|
DEVINSTID_A szDevInstName, ULONG ulHardwareProfile, PULONG pulValue,
|
||||||
|
ULONG ulFlags)
|
||||||
|
{
|
||||||
|
TRACE("%s %lu %p %lx\n", szDevInstName,
|
||||||
|
ulHardwareProfile, pulValue, ulFlags);
|
||||||
|
|
||||||
|
return CM_Get_HW_Prof_Flags_ExA(szDevInstName, ulHardwareProfile,
|
||||||
|
pulValue, ulFlags, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* CM_Get_HW_Prof_FlagsW [SETUPAPI.@]
|
||||||
|
*/
|
||||||
|
CONFIGRET WINAPI CM_Get_HW_Prof_FlagsW(
|
||||||
|
DEVINSTID_W szDevInstName, ULONG ulHardwareProfile, PULONG pulValue,
|
||||||
|
ULONG ulFlags)
|
||||||
|
{
|
||||||
|
TRACE("%s %lu %p %lx\n", debugstr_w(szDevInstName),
|
||||||
|
ulHardwareProfile, pulValue, ulFlags);
|
||||||
|
|
||||||
|
return CM_Get_HW_Prof_Flags_ExW(szDevInstName, ulHardwareProfile,
|
||||||
|
pulValue, ulFlags, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* CM_Get_HW_Prof_Flags_ExA [SETUPAPI.@]
|
||||||
|
*/
|
||||||
|
CONFIGRET WINAPI CM_Get_HW_Prof_Flags_ExA(
|
||||||
|
DEVINSTID_A szDevInstName, ULONG ulHardwareProfile, PULONG pulValue,
|
||||||
|
ULONG ulFlags, HMACHINE hMachine)
|
||||||
|
{
|
||||||
|
DEVINSTID_W pszDevIdW = NULL;
|
||||||
|
CONFIGRET ret = CR_SUCCESS;
|
||||||
|
|
||||||
|
TRACE("%s %lu %p %lx %lx\n", szDevInstName,
|
||||||
|
ulHardwareProfile, pulValue, ulFlags, hMachine);
|
||||||
|
|
||||||
|
if (szDevInstName != NULL)
|
||||||
|
{
|
||||||
|
if (CaptureAndConvertAnsiArg(szDevInstName, &pszDevIdW))
|
||||||
|
return CR_INVALID_DEVICE_ID;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = CM_Get_HW_Prof_Flags_ExW(pszDevIdW, ulHardwareProfile,
|
||||||
|
pulValue, ulFlags, hMachine);
|
||||||
|
|
||||||
|
if (pszDevIdW != NULL)
|
||||||
|
MyFree(pszDevIdW);
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* CM_Get_HW_Prof_Flags_ExW [SETUPAPI.@]
|
||||||
|
*/
|
||||||
|
CONFIGRET WINAPI CM_Get_HW_Prof_Flags_ExW(
|
||||||
|
DEVINSTID_W szDevInstName, ULONG ulHardwareProfile, PULONG pulValue,
|
||||||
|
ULONG ulFlags, HMACHINE hMachine)
|
||||||
|
{
|
||||||
|
RPC_BINDING_HANDLE BindingHandle = NULL;
|
||||||
|
|
||||||
|
FIXME("%s %lu %p %lx %lx\n", debugstr_w(szDevInstName),
|
||||||
|
ulHardwareProfile, pulValue, ulFlags, hMachine);
|
||||||
|
|
||||||
|
if ((szDevInstName == NULL) || (pulValue == NULL))
|
||||||
|
return CR_INVALID_POINTER;
|
||||||
|
|
||||||
|
if (ulFlags != 0)
|
||||||
|
return CR_INVALID_FLAG;
|
||||||
|
|
||||||
|
/* FIXME: Check whether szDevInstName is valid */
|
||||||
|
|
||||||
|
if (hMachine != NULL)
|
||||||
|
{
|
||||||
|
BindingHandle = ((PMACHINE_INFO)hMachine)->BindingHandle;
|
||||||
|
if (BindingHandle == NULL)
|
||||||
|
return CR_FAILURE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (!PnpGetLocalHandles(&BindingHandle, NULL))
|
||||||
|
return CR_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return PNP_HwProfFlags(BindingHandle, PNP_GET_HW_PROFILE_FLAGS, szDevInstName,
|
||||||
|
ulHardwareProfile, pulValue, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
* CM_Get_Parent [SETUPAPI.@]
|
* CM_Get_Parent [SETUPAPI.@]
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -101,10 +101,10 @@
|
||||||
@ stub CM_Get_First_Log_Conf_Ex
|
@ stub CM_Get_First_Log_Conf_Ex
|
||||||
@ stdcall CM_Get_Global_State(ptr long)
|
@ stdcall CM_Get_Global_State(ptr long)
|
||||||
@ stdcall CM_Get_Global_State_Ex(ptr long long)
|
@ stdcall CM_Get_Global_State_Ex(ptr long long)
|
||||||
@ stub CM_Get_HW_Prof_FlagsA
|
@ stdcall CM_Get_HW_Prof_FlagsA(str long ptr long)
|
||||||
@ stub CM_Get_HW_Prof_FlagsW
|
@ stdcall CM_Get_HW_Prof_FlagsW(wstr long ptr long)
|
||||||
@ stub CM_Get_HW_Prof_Flags_ExA
|
@ stdcall CM_Get_HW_Prof_Flags_ExA(str long ptr long long)
|
||||||
@ stub CM_Get_HW_Prof_Flags_ExW
|
@ stdcall CM_Get_HW_Prof_Flags_ExW(wstr long ptr long long)
|
||||||
@ stub CM_Get_Hardware_Profile_InfoA
|
@ stub CM_Get_Hardware_Profile_InfoA
|
||||||
@ stub CM_Get_Hardware_Profile_InfoW
|
@ stub CM_Get_Hardware_Profile_InfoW
|
||||||
@ stub CM_Get_Hardware_Profile_Info_ExA
|
@ stub CM_Get_Hardware_Profile_Info_ExA
|
||||||
|
|
|
@ -1428,8 +1428,52 @@ CM_Get_Global_State_Ex(
|
||||||
|
|
||||||
/* FIXME: Obsolete CM_Get_Hardware_Profile_Info */
|
/* FIXME: Obsolete CM_Get_Hardware_Profile_Info */
|
||||||
/* FIXME: Obsolete CM_Get_Hardware_Profile_Info_Ex */
|
/* FIXME: Obsolete CM_Get_Hardware_Profile_Info_Ex */
|
||||||
/* FIXME: Obsolete CM_Get_HW_Prof_Flags */
|
|
||||||
/* FIXME: Obsolete CM_Get_HW_Prof_Flags_Ex */
|
CMAPI
|
||||||
|
CONFIGRET
|
||||||
|
WINAPI
|
||||||
|
CM_Get_HW_Prof_FlagsA(
|
||||||
|
IN DEVINSTID_A szDevInstName,
|
||||||
|
IN ULONG ulHardwareProfile,
|
||||||
|
OUT PULONG pulValue,
|
||||||
|
IN ULONG ulFlags);
|
||||||
|
|
||||||
|
CMAPI
|
||||||
|
CONFIGRET
|
||||||
|
WINAPI
|
||||||
|
CM_Get_HW_Prof_FlagsW(
|
||||||
|
IN DEVINSTID_W szDevInstName,
|
||||||
|
IN ULONG ulHardwareProfile,
|
||||||
|
OUT PULONG pulValue,
|
||||||
|
IN ULONG ulFlags);
|
||||||
|
|
||||||
|
CMAPI
|
||||||
|
CONFIGRET
|
||||||
|
WINAPI
|
||||||
|
CM_Get_HW_Prof_Flags_ExA(
|
||||||
|
IN DEVINSTID_A szDevInstName,
|
||||||
|
IN ULONG ulHardwareProfile,
|
||||||
|
OUT PULONG pulValue,
|
||||||
|
IN ULONG ulFlags,
|
||||||
|
IN HMACHINE hMachine);
|
||||||
|
|
||||||
|
CMAPI
|
||||||
|
CONFIGRET
|
||||||
|
WINAPI
|
||||||
|
CM_Get_HW_Prof_Flags_ExW(
|
||||||
|
IN DEVINSTID_W szDevInstName,
|
||||||
|
IN ULONG ulHardwareProfile,
|
||||||
|
OUT PULONG pulValue,
|
||||||
|
IN ULONG ulFlags,
|
||||||
|
IN HMACHINE hMachine);
|
||||||
|
|
||||||
|
#ifdef UNICODE
|
||||||
|
#define CM_Get_HW_Prof_Flags CM_Get_HW_Prof_FlagsW
|
||||||
|
#define CM_Get_HW_Prof_Flags_Ex CM_Get_HW_Prof_Flags_ExW
|
||||||
|
#else
|
||||||
|
#define CM_Get_HW_Prof_Flags CM_Get_HW_Prof_FlagsA
|
||||||
|
#define CM_Get_HW_Prof_Flags_Ex CM_Get_HW_Prof_Flags_ExA
|
||||||
|
#endif /* UNICODE */
|
||||||
|
|
||||||
CMAPI
|
CMAPI
|
||||||
CONFIGRET
|
CONFIGRET
|
||||||
|
|
|
@ -187,6 +187,16 @@ interface pnp
|
||||||
/* Function 39 */
|
/* Function 39 */
|
||||||
CONFIGRET PNP_RequestEjectPC(handle_t BindingHandle);
|
CONFIGRET PNP_RequestEjectPC(handle_t BindingHandle);
|
||||||
|
|
||||||
|
/* Function 40 */
|
||||||
|
cpp_quote("#define PNP_SET_HW_PROFILE_FLAGS 0")
|
||||||
|
cpp_quote("#define PNP_GET_HW_PROFILE_FLAGS 1")
|
||||||
|
CONFIGRET PNP_HwProfFlags(handle_t BindingHandle,
|
||||||
|
[in] DWORD Action,
|
||||||
|
[in, string] wchar_t *DeviceId,
|
||||||
|
[in] DWORD ProfileId,
|
||||||
|
[in, out] unsigned long *Value,
|
||||||
|
[in] DWORD Flags);
|
||||||
|
|
||||||
/* Function 58 */
|
/* Function 58 */
|
||||||
CONFIGRET PNP_RunDetection(handle_t BindingHandle,
|
CONFIGRET PNP_RunDetection(handle_t BindingHandle,
|
||||||
[in] unsigned long Flags);
|
[in] unsigned long Flags);
|
||||||
|
|
|
@ -270,6 +270,12 @@ CONFIGRET WINAPI CM_Get_Device_ID_Size( PULONG, DEVINST, ULONG );
|
||||||
CONFIGRET WINAPI CM_Get_Device_ID_Size_Ex( PULONG, DEVINST, ULONG, HMACHINE );
|
CONFIGRET WINAPI CM_Get_Device_ID_Size_Ex( PULONG, DEVINST, ULONG, HMACHINE );
|
||||||
CONFIGRET WINAPI CM_Get_Global_State( PULONG, ULONG );
|
CONFIGRET WINAPI CM_Get_Global_State( PULONG, ULONG );
|
||||||
CONFIGRET WINAPI CM_Get_Global_State_Ex( PULONG, ULONG, HMACHINE );
|
CONFIGRET WINAPI CM_Get_Global_State_Ex( PULONG, ULONG, HMACHINE );
|
||||||
|
CONFIGRET WINAPI CM_Get_HW_Prof_FlagsA( DEVINSTID_A, ULONG, PULONG, ULONG );
|
||||||
|
CONFIGRET WINAPI CM_Get_HW_Prof_FlagsW( DEVINSTID_W, ULONG, PULONG, ULONG );
|
||||||
|
#define CM_Get_HW_Prof_Flags WINELIB_NAME_AW(CM_Get_HW_Prof_Flags)
|
||||||
|
CONFIGRET WINAPI CM_Get_HW_Prof_Flags_ExA( DEVINSTID_A, ULONG, PULONG, ULONG, HMACHINE );
|
||||||
|
CONFIGRET WINAPI CM_Get_HW_Prof_Flags_ExW( DEVINSTID_W, ULONG, PULONG, ULONG, HMACHINE );
|
||||||
|
#define CM_Get_HW_Prof_Flags_Ex WINELIB_NAME_AW(CM_Get_HW_Prof_Flags_Ex)
|
||||||
CONFIGRET WINAPI CM_Get_Parent( PDEVINST, DEVINST, ULONG );
|
CONFIGRET WINAPI CM_Get_Parent( PDEVINST, DEVINST, ULONG );
|
||||||
CONFIGRET WINAPI CM_Get_Parent_Ex( PDEVINST, DEVINST, ULONG, HMACHINE );
|
CONFIGRET WINAPI CM_Get_Parent_Ex( PDEVINST, DEVINST, ULONG, HMACHINE );
|
||||||
CONFIGRET WINAPI CM_Get_Sibling( PDEVINST, DEVINST, ULONG );
|
CONFIGRET WINAPI CM_Get_Sibling( PDEVINST, DEVINST, ULONG );
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue