[PATCH] setupapi: Stub CM_Open_DevNode_Key and CM_Get_Child

Nikolay Sivov bunglehead at gmail.com
Wed Jan 18 22:02:39 CST 2017


On 18.01.2017 22:40, Christoph Brill wrote:
> Both are necessary to start Lord of the Rings Online as of January 2017
> 
> Signed-off-by: Christoph Brill <egore911 at gmail.com>
> ---
>  dlls/setupapi/setupapi.spec |  4 ++--
>  dlls/setupapi/stubs.c       | 22 ++++++++++++++++++++++
>  2 files changed, 24 insertions(+), 2 deletions(-)
> 
> diff --git a/dlls/setupapi/setupapi.spec b/dlls/setupapi/setupapi.spec
> index 0eb8359ee1..5c57c23431 100644
> --- a/dlls/setupapi/setupapi.spec
> +++ b/dlls/setupapi/setupapi.spec
> @@ -53,7 +53,7 @@
>  @ stub CM_Free_Res_Des
>  @ stub CM_Free_Res_Des_Ex
>  @ stub CM_Free_Res_Des_Handle
> -@ stub CM_Get_Child
> +@ stdcall CM_Get_Child(ptr long long)
>  @ stub CM_Get_Child_Ex
>  @ stub CM_Get_Class_Key_NameA
>  @ stub CM_Get_Class_Key_NameW
> @@ -144,7 +144,7 @@
>  @ stub CM_Open_Class_KeyW
>  @ stub CM_Open_Class_Key_ExA
>  @ stub CM_Open_Class_Key_ExW
> -@ stub CM_Open_DevNode_Key
> +@ stdcall CM_Open_DevNode_Key(long long long long ptr long)
>  @ stub CM_Open_DevNode_Key_Ex
>  @ stub CM_Query_And_Remove_SubTreeA
>  @ stub CM_Query_And_Remove_SubTreeW
> diff --git a/dlls/setupapi/stubs.c b/dlls/setupapi/stubs.c
> index 6ecf240c86..1f76b08a3d 100644
> --- a/dlls/setupapi/stubs.c
> +++ b/dlls/setupapi/stubs.c
> @@ -79,6 +79,28 @@ CONFIGRET WINAPI CM_Disconnect_Machine(HMACHINE handle)
>  }
>  
>  /***********************************************************************
> + *             CM_Open_DevNode_Key  (SETUPAPI.@)
> + */
> +CONFIGRET WINAPI CM_Open_DevNode_Key(
> +    DEVINST dnDevInst, REGSAM access, ULONG ulHardwareProfile, ULONG /*REGDISPOSITION*/ disposition,
> +    PHKEY phkDevice, ULONG ulFlags)
> +{
> +    FIXME("0x%08x 0x%08x 0x%08x 0x%08x %p 0x%08x : stub\n", dnDevInst, access, ulHardwareProfile,
> +          disposition, phkDevice, ulFlags);
> +    return CR_SUCCESS;
> +}
> +
> +/***********************************************************************
> + *             CM_Get_Child  (SETUPAPI.@)
> + */
> +CONFIGRET WINAPI CM_Get_Child(
> +    PDEVINST pdnDevInst, DEVINST dnDevInst, ULONG ulFlags)
> +{
> +    FIXME("%p 0x%08x 0x%08x: stub\n", pdnDevInst, dnDevInst, ulFlags);
> +    return CR_SUCCESS;
> +}
> +

Hi, Christoph.

Please add prototypes to corresponding public header too. This will also
fix REGDISPOSITION case - no reason not to have proper typedef for it.

Also please run ./tools/make_specfiles to update dependent dlls.



More information about the wine-devel mailing list