[UMPNPMGR][SETUPAPI] PNP_RegisterNotification() has got 9 parameters.

This commit is contained in:
Eric Kohl 2019-06-29 13:38:42 +02:00
parent 18e835b605
commit 7eb6e42626
3 changed files with 26 additions and 11 deletions

View file

@ -3530,20 +3530,30 @@ DWORD
WINAPI WINAPI
PNP_RegisterNotification( PNP_RegisterNotification(
handle_t hBinding, handle_t hBinding,
DWORD dwUnknown2, DWORD ulUnknown2,
DWORD dwUnknown3, DWORD ulUnknown3,
BYTE *pNotificationFilter, BYTE *pNotificationFilter,
DWORD ulNotificationFilterSize, DWORD ulNotificationFilterSize,
DWORD ulFlags, DWORD ulFlags,
DWORD *pulNotify) DWORD *pulNotify,
DWORD ulUnknown8,
DWORD *pulUnknown9)
{ {
#if 0 #if 0
PNOTIFY_DATA pNotifyData; PNOTIFY_DATA pNotifyData;
#endif #endif
DPRINT1("PNP_RegisterNotification(%p %lx %lx %p %lu 0x%lx %p)\n", DPRINT1("PNP_RegisterNotification(%p %lx %lx %p %lu 0x%lx %p %lx %p)\n",
hBinding, dwUnknown2, dwUnknown3, pNotificationFilter, hBinding, ulUnknown2, ulUnknown3, pNotificationFilter,
ulNotificationFilterSize, ulFlags, pulNotify); ulNotificationFilterSize, ulFlags, pulNotify, ulUnknown8, pulUnknown9);
if (pNotificationFilter == NULL ||
pulNotify == NULL ||
pulUnknown9 == NULL)
return CR_INVALID_POINTER;
if (ulFlags & ~0x7)
return CR_INVALID_FLAG;
#if 0 #if 0
pNotifyData = RtlAllocateHeap(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(NOTIFY_DATA)); pNotifyData = RtlAllocateHeap(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(NOTIFY_DATA));

View file

@ -593,9 +593,10 @@ CMP_RegisterNotification(
{ {
RPC_BINDING_HANDLE BindingHandle = NULL; RPC_BINDING_HANDLE BindingHandle = NULL;
PNOTIFY_DATA pNotifyData = NULL; PNOTIFY_DATA pNotifyData = NULL;
DWORD ulUnknown9 = 0;
CONFIGRET ret = CR_SUCCESS; CONFIGRET ret = CR_SUCCESS;
TRACE("CMP_RegisterNotification(%p %p %lu %p)\n", FIXME("CMP_RegisterNotification(%p %p %lu %p)\n",
hRecipient, lpvNotificationFilter, ulFlags, phDevNotify); hRecipient, lpvNotificationFilter, ulFlags, phDevNotify);
if ((hRecipient == NULL) || if ((hRecipient == NULL) ||
@ -639,7 +640,9 @@ CMP_RegisterNotification(
(BYTE*)lpvNotificationFilter, (BYTE*)lpvNotificationFilter,
((DEV_BROADCAST_HDR*)lpvNotificationFilter)->dbch_size, ((DEV_BROADCAST_HDR*)lpvNotificationFilter)->dbch_size,
ulFlags, ulFlags,
&pNotifyData->ulNotifyData); &pNotifyData->ulNotifyData,
0,
&ulUnknown9);
} }
RpcExcept(EXCEPTION_EXECUTE_HANDLER) RpcExcept(EXCEPTION_EXECUTE_HANDLER)
{ {

View file

@ -875,12 +875,14 @@ interface pnp
__stdcall __stdcall
PNP_RegisterNotification( PNP_RegisterNotification(
[in] handle_t hBinding, [in] handle_t hBinding,
[in] DWORD dwUnknown2, [in] DWORD ulUnknown2,
[in] DWORD dwUnknown3, [in] DWORD ulUnknown3,
[in, size_is(ulNotificationFilterSize)] BYTE *pNotificationFilter, [in, size_is(ulNotificationFilterSize)] BYTE *pNotificationFilter,
[in] DWORD ulNotificationFilterSize, [in] DWORD ulNotificationFilterSize,
[in] DWORD ulFlags, [in] DWORD ulFlags,
[out] DWORD *pulNotifyData); [out] DWORD *pulNotifyData,
[in] DWORD ulUnknown8,
[out] DWORD *pulUnknown9);
/* Function 60 */ /* Function 60 */
DWORD DWORD