mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 17:05:44 +00:00
Implement CM_Set_HW_Prof_Flags[_Ex]A/W.
svn path=/trunk/; revision=22600
This commit is contained in:
parent
78baad6812
commit
92d62b0f19
5 changed files with 162 additions and 10 deletions
|
@ -195,10 +195,10 @@ CM_Set_DevNode_Registry_Property_ExA@24=SETUPAPI.CM_Set_DevNode_Registry_Propert
|
||||||
CM_Set_DevNode_Registry_Property_ExW@24=SETUPAPI.CM_Set_DevNode_Registry_Property_ExW
|
CM_Set_DevNode_Registry_Property_ExW@24=SETUPAPI.CM_Set_DevNode_Registry_Property_ExW
|
||||||
;CM_Set_HW_Prof
|
;CM_Set_HW_Prof
|
||||||
;CM_Set_HW_Prof_Ex
|
;CM_Set_HW_Prof_Ex
|
||||||
;CM_Set_HW_Prof_FlagsA
|
CM_Set_HW_Prof_FlagsA@16=SETUPAPI.CM_Set_HW_Prof_FlagsA
|
||||||
;CM_Set_HW_Prof_FlagsW
|
CM_Set_HW_Prof_FlagsW@16=SETUPAPI.CM_Set_HW_Prof_FlagsW
|
||||||
;CM_Set_HW_Prof_Flags_ExA
|
CM_Set_HW_Prof_Flags_ExA@20=SETUPAPI.CM_Set_HW_Prof_Flags_ExA
|
||||||
;CM_Set_HW_Prof_Flags_ExW
|
CM_Set_HW_Prof_Flags_ExW@20=SETUPAPI.CM_Set_HW_Prof_Flags_ExW
|
||||||
CM_Setup_DevNode@8=SETUPAPI.CM_Setup_DevNode
|
CM_Setup_DevNode@8=SETUPAPI.CM_Setup_DevNode
|
||||||
CM_Setup_DevNode_Ex@12=SETUPAPI.CM_Setup_DevNode_Ex
|
CM_Setup_DevNode_Ex@12=SETUPAPI.CM_Setup_DevNode_Ex
|
||||||
;CM_Test_Range_Available
|
;CM_Test_Range_Available
|
||||||
|
|
|
@ -2934,6 +2934,100 @@ CONFIGRET WINAPI CM_Set_DevNode_Registry_Property_ExW(
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* CM_Set_HW_Prof_FlagsA [SETUPAPI.@]
|
||||||
|
*/
|
||||||
|
CONFIGRET WINAPI CM_Set_HW_Prof_FlagsA(
|
||||||
|
DEVINSTID_A szDevInstName, ULONG ulConfig, ULONG ulValue,
|
||||||
|
ULONG ulFlags)
|
||||||
|
{
|
||||||
|
TRACE("%s %lu %lu %lx\n", szDevInstName,
|
||||||
|
ulConfig, ulValue, ulFlags);
|
||||||
|
return CM_Set_HW_Prof_Flags_ExA(szDevInstName, ulConfig, ulValue,
|
||||||
|
ulFlags, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* CM_Set_HW_Prof_FlagsW [SETUPAPI.@]
|
||||||
|
*/
|
||||||
|
CONFIGRET WINAPI CM_Set_HW_Prof_FlagsW(
|
||||||
|
DEVINSTID_W szDevInstName, ULONG ulConfig, ULONG ulValue,
|
||||||
|
ULONG ulFlags)
|
||||||
|
{
|
||||||
|
TRACE("%s %lu %lu %lx\n", debugstr_w(szDevInstName),
|
||||||
|
ulConfig, ulValue, ulFlags);
|
||||||
|
return CM_Set_HW_Prof_Flags_ExW(szDevInstName, ulConfig, ulValue,
|
||||||
|
ulFlags, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* CM_Set_HW_Prof_Flags_ExA [SETUPAPI.@]
|
||||||
|
*/
|
||||||
|
CONFIGRET WINAPI CM_Set_HW_Prof_Flags_ExA(
|
||||||
|
DEVINSTID_A szDevInstName, ULONG ulConfig, ULONG ulValue,
|
||||||
|
ULONG ulFlags, HMACHINE hMachine)
|
||||||
|
{
|
||||||
|
DEVINSTID_W pszDevIdW = NULL;
|
||||||
|
CONFIGRET ret = CR_SUCCESS;
|
||||||
|
|
||||||
|
TRACE("%s %lu %lu %lx %lx\n", szDevInstName,
|
||||||
|
ulConfig, ulValue, ulFlags, hMachine);
|
||||||
|
|
||||||
|
if (szDevInstName != NULL)
|
||||||
|
{
|
||||||
|
if (CaptureAndConvertAnsiArg(szDevInstName, &pszDevIdW))
|
||||||
|
return CR_INVALID_DEVICE_ID;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = CM_Set_HW_Prof_Flags_ExW(pszDevIdW, ulConfig, ulValue,
|
||||||
|
ulFlags, hMachine);
|
||||||
|
|
||||||
|
if (pszDevIdW != NULL)
|
||||||
|
MyFree(pszDevIdW);
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* CM_Set_HW_Prof_Flags_ExW [SETUPAPI.@]
|
||||||
|
*/
|
||||||
|
CONFIGRET WINAPI CM_Set_HW_Prof_Flags_ExW(
|
||||||
|
DEVINSTID_W szDevInstName, ULONG ulConfig, ULONG ulValue,
|
||||||
|
ULONG ulFlags, HMACHINE hMachine)
|
||||||
|
{
|
||||||
|
RPC_BINDING_HANDLE BindingHandle = NULL;
|
||||||
|
|
||||||
|
FIXME("%s %lu %lu %lx %lx\n", debugstr_w(szDevInstName),
|
||||||
|
ulConfig, ulValue, ulFlags, hMachine);
|
||||||
|
|
||||||
|
if (szDevInstName == NULL)
|
||||||
|
return CR_INVALID_POINTER;
|
||||||
|
|
||||||
|
if (ulFlags & ~ CM_SET_HW_PROF_FLAGS_BITS)
|
||||||
|
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_SET_HW_PROFILE_FLAGS, szDevInstName,
|
||||||
|
ulConfig, &ulValue, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
* CM_Setup_DevNode [SETUPAPI.@]
|
* CM_Setup_DevNode [SETUPAPI.@]
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -179,10 +179,10 @@
|
||||||
@ stdcall CM_Set_DevNode_Registry_Property_ExW(long long ptr long long long)
|
@ stdcall CM_Set_DevNode_Registry_Property_ExW(long long ptr long long long)
|
||||||
@ stub CM_Set_HW_Prof
|
@ stub CM_Set_HW_Prof
|
||||||
@ stub CM_Set_HW_Prof_Ex
|
@ stub CM_Set_HW_Prof_Ex
|
||||||
@ stub CM_Set_HW_Prof_FlagsA
|
@ stdcall CM_Set_HW_Prof_FlagsA(str long long long)
|
||||||
@ stub CM_Set_HW_Prof_FlagsW
|
@ stdcall CM_Set_HW_Prof_FlagsW(wstr long long long)
|
||||||
@ stub CM_Set_HW_Prof_Flags_ExA
|
@ stdcall CM_Set_HW_Prof_Flags_ExA(str long long long long)
|
||||||
@ stub CM_Set_HW_Prof_Flags_ExW
|
@ stdcall CM_Set_HW_Prof_Flags_ExW(wstr long long long long)
|
||||||
@ stdcall CM_Setup_DevNode(long long)
|
@ stdcall CM_Setup_DevNode(long long)
|
||||||
@ stdcall CM_Setup_DevNode_Ex(long long long)
|
@ stdcall CM_Setup_DevNode_Ex(long long long)
|
||||||
@ stub CM_Test_Range_Available
|
@ stub CM_Test_Range_Available
|
||||||
|
|
|
@ -2072,8 +2072,57 @@ CM_Set_DevNode_Registry_Property_ExW(
|
||||||
|
|
||||||
/* FIXME: Obsolete CM_Set_HW_Prof */
|
/* FIXME: Obsolete CM_Set_HW_Prof */
|
||||||
/* FIXME: Obsolete CM_Set_HW_Prof_Ex */
|
/* FIXME: Obsolete CM_Set_HW_Prof_Ex */
|
||||||
/* FIXME: Obsolete CM_Set_HW_Prof_Flags */
|
|
||||||
/* FIXME: Obsolete CM_Set_HW_Prof_Flags_Ex */
|
/* CM_Set_HW_Prof_Flags[_Ex].ulFlags constants */
|
||||||
|
#define CM_SET_HW_PROF_FLAGS_UI_NOT_OK (0x00000001)
|
||||||
|
#define CM_SET_HW_PROF_FLAGS_BITS (0x00000001)
|
||||||
|
|
||||||
|
CMAPI
|
||||||
|
CONFIGRET
|
||||||
|
WINAPI
|
||||||
|
CM_Set_HW_Prof_FlagsA(
|
||||||
|
IN DEVINSTID_A szDevInstName,
|
||||||
|
IN ULONG ulConfig,
|
||||||
|
IN ULONG ulValue,
|
||||||
|
IN ULONG ulFlags);
|
||||||
|
|
||||||
|
CMAPI
|
||||||
|
CONFIGRET
|
||||||
|
WINAPI
|
||||||
|
CM_Set_HW_Prof_FlagsW(
|
||||||
|
IN DEVINSTID_W szDevInstName,
|
||||||
|
IN ULONG ulConfig,
|
||||||
|
IN ULONG ulValue,
|
||||||
|
IN ULONG ulFlags);
|
||||||
|
|
||||||
|
CMAPI
|
||||||
|
CONFIGRET
|
||||||
|
WINAPI
|
||||||
|
CM_Set_HW_Prof_Flags_ExA(
|
||||||
|
IN DEVINSTID_A szDevInstName,
|
||||||
|
IN ULONG ulConfig,
|
||||||
|
IN ULONG ulValue,
|
||||||
|
IN ULONG ulFlags,
|
||||||
|
IN HMACHINE hMachine);
|
||||||
|
|
||||||
|
CMAPI
|
||||||
|
CONFIGRET
|
||||||
|
WINAPI
|
||||||
|
CM_Set_HW_Prof_Flags_ExW(
|
||||||
|
IN DEVINSTID_W szDevInstName,
|
||||||
|
IN ULONG ulConfig,
|
||||||
|
IN ULONG ulValue,
|
||||||
|
IN ULONG ulFlags,
|
||||||
|
IN HMACHINE hMachine);
|
||||||
|
|
||||||
|
#ifdef UNICODE
|
||||||
|
#define CM_Set_HW_Prof_Flags CM_Set_HW_Prof_FlagsW
|
||||||
|
#define CM_Set_HW_Prof_Flags_Ex CM_Set_HW_Prof_Flags_ExW
|
||||||
|
#else
|
||||||
|
#define CM_Set_HW_Prof_Flags CM_Set_HW_Prof_FlagsA
|
||||||
|
#define CM_Set_HW_Prof_Flags_Ex CM_Set_HW_Prof_Flags_ExA
|
||||||
|
#endif /* UNICODE */
|
||||||
|
|
||||||
/* FIXME: Obsolete CM_Setup_DevNode */
|
/* FIXME: Obsolete CM_Setup_DevNode */
|
||||||
/* FIXME: Obsolete CM_Setup_DevNode_Ex */
|
/* FIXME: Obsolete CM_Setup_DevNode_Ex */
|
||||||
/* FIXME: Obsolete CM_Test_Range_Available */
|
/* FIXME: Obsolete CM_Test_Range_Available */
|
||||||
|
|
|
@ -185,6 +185,9 @@ DECL_WINELIB_CFGMGR32_TYPE_AW(DEVINSTID)
|
||||||
#define CM_CREATE_DEVINST_DO_NOT_INSTALL CM_CREATE_DEVNODE_DO_NOT_INSTALL
|
#define CM_CREATE_DEVINST_DO_NOT_INSTALL CM_CREATE_DEVNODE_DO_NOT_INSTALL
|
||||||
#define CM_CREATE_DEVINST_BITS CM_CREATE_DEVNODE_BITS
|
#define CM_CREATE_DEVINST_BITS CM_CREATE_DEVNODE_BITS
|
||||||
|
|
||||||
|
/* ulFlags for CM_Set_HW_Prof_Flags[_Ex]A/W */
|
||||||
|
#define CM_SET_HW_PROF_FLAGS_UI_NOT_OK 0x00000001
|
||||||
|
#define CM_SET_HW_PROF_FLAGS_BITS 0x00000001
|
||||||
|
|
||||||
#define CMP_MAGIC 0x01234567
|
#define CMP_MAGIC 0x01234567
|
||||||
|
|
||||||
|
@ -319,6 +322,12 @@ CONFIGRET WINAPI CM_Set_DevNode_Registry_Property_ExA( DEVINST, ULONG, PCVOID, U
|
||||||
CONFIGRET WINAPI CM_Set_DevNode_Registry_Property_ExW( DEVINST, ULONG, PCVOID, ULONG, ULONG, HMACHINE );
|
CONFIGRET WINAPI CM_Set_DevNode_Registry_Property_ExW( DEVINST, ULONG, PCVOID, ULONG, ULONG, HMACHINE );
|
||||||
#define CM_Set_DevNode_Registry_Property_Ex WINELIB_NAME_AW(CM_Set_DevNode_Registry_Property_Ex)
|
#define CM_Set_DevNode_Registry_Property_Ex WINELIB_NAME_AW(CM_Set_DevNode_Registry_Property_Ex)
|
||||||
|
|
||||||
|
CONFIGRET WINAPI CM_Set_HW_Prof_FlagsA( DEVINSTID_A, ULONG, ULONG, ULONG );
|
||||||
|
CONFIGRET WINAPI CM_Set_HW_Prof_FlagsW( DEVINSTID_W, ULONG, ULONG, ULONG );
|
||||||
|
#define CM_Set_HW_Prof_Flags WINELIB_NAME_AW(CM_Set_HW_Prof_Flags)
|
||||||
|
CONFIGRET WINAPI CM_Set_HW_Prof_Flags_ExA( DEVINSTID_A, ULONG, ULONG, ULONG, HMACHINE );
|
||||||
|
CONFIGRET WINAPI CM_Set_HW_Prof_Flags_ExW( DEVINSTID_W, ULONG, ULONG, ULONG, HMACHINE );
|
||||||
|
#define CM_Set_HW_Prof_Flags_Ex WINELIB_NAME_AW(CM_Set_HW_Prof_Flags_Ex)
|
||||||
CONFIGRET WINAPI CM_Setup_DevNode( DEVINST, ULONG );
|
CONFIGRET WINAPI CM_Setup_DevNode( DEVINST, ULONG );
|
||||||
CONFIGRET WINAPI CM_Setup_DevNode_Ex( DEVINST, ULONG, HMACHINE );
|
CONFIGRET WINAPI CM_Setup_DevNode_Ex( DEVINST, ULONG, HMACHINE );
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue