mirror of
https://github.com/reactos/reactos.git
synced 2025-07-31 19:52:11 +00:00
[SETUPAPI]
Implement CM_Is_Version_Available and CM_Is_Version_Available_Ex. svn path=/trunk/; revision=50610
This commit is contained in:
parent
0b0d97cc92
commit
d3bca39b11
2 changed files with 57 additions and 2 deletions
|
@ -2918,6 +2918,61 @@ CONFIGRET WINAPI CM_Is_Dock_Station_Present_Ex(
|
|||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* CM_Is_Version_Available_Ex [SETUPAPI.@]
|
||||
*/
|
||||
BOOL WINAPI CM_Is_Version_Available(
|
||||
WORD wVersion)
|
||||
{
|
||||
TRACE("%hu\n", wVersion);
|
||||
return CM_Is_Version_Available_Ex(wVersion, NULL);
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* CM_Is_Version_Available_Ex [SETUPAPI.@]
|
||||
*/
|
||||
BOOL WINAPI CM_Is_Version_Available_Ex(
|
||||
WORD wVersion, HMACHINE hMachine)
|
||||
{
|
||||
RPC_BINDING_HANDLE BindingHandle = NULL;
|
||||
WORD wServerVersion;
|
||||
CONFIGRET ret;
|
||||
|
||||
TRACE("%hu %lx\n", wVersion, hMachine);
|
||||
|
||||
if (wVersion <= 0x400)
|
||||
return TRUE;
|
||||
|
||||
if (hMachine != NULL)
|
||||
{
|
||||
BindingHandle = ((PMACHINE_INFO)hMachine)->BindingHandle;
|
||||
if (BindingHandle == NULL)
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!PnpGetLocalHandles(&BindingHandle, NULL))
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
RpcTryExcept
|
||||
{
|
||||
ret = PNP_GetVersion(BindingHandle, &wServerVersion);
|
||||
}
|
||||
RpcExcept(EXCEPTION_EXECUTE_HANDLER)
|
||||
{
|
||||
ret = RpcStatusToCmStatus(RpcExceptionCode());
|
||||
}
|
||||
RpcEndExcept;
|
||||
|
||||
if (ret != CR_SUCCESS)
|
||||
return FALSE;
|
||||
|
||||
return (wServerVersion >= wVersion);
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* CM_Locate_DevNodeA [SETUPAPI.@]
|
||||
*/
|
||||
|
|
|
@ -137,8 +137,8 @@
|
|||
@ stub CM_Invert_Range_List
|
||||
@ stdcall CM_Is_Dock_Station_Present(ptr)
|
||||
@ stdcall CM_Is_Dock_Station_Present_Ex(ptr long)
|
||||
@ stub CM_Is_Version_Available
|
||||
@ stub CM_Is_Version_Available_Ex
|
||||
@ stdcall CM_Is_Version_Available(long)
|
||||
@ stdcall CM_Is_Version_Available_Ex(long long)
|
||||
@ stdcall CM_Locate_DevNodeA(ptr str long)
|
||||
@ stdcall CM_Locate_DevNodeW(ptr wstr long)
|
||||
@ stdcall CM_Locate_DevNode_ExA(ptr str long long)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue