diff --git a/reactos/dll/win32/setupapi/cfgmgr.c b/reactos/dll/win32/setupapi/cfgmgr.c index b66a0b6dfb9..4f3a83e7710 100644 --- a/reactos/dll/win32/setupapi/cfgmgr.c +++ b/reactos/dll/win32/setupapi/cfgmgr.c @@ -83,25 +83,6 @@ RpcStatusToCmStatus(RPC_STATUS Status) } -/*********************************************************************** - * CMP_WaitNoPendingInstallEvents [SETUPAPI.@] - */ -DWORD WINAPI CMP_WaitNoPendingInstallEvents( - DWORD dwTimeout) -{ - HANDLE hEvent; - DWORD ret; - - hEvent = OpenEventW(SYNCHRONIZE, FALSE, L"Global\\PnP_No_Pending_Install_Events"); - if (hEvent == NULL) - return WAIT_FAILED; - - ret = WaitForSingleObject(hEvent, dwTimeout); - CloseHandle(hEvent); - return ret; -} - - /*********************************************************************** * CMP_Init_Detection [SETUPAPI.@] */ @@ -133,6 +114,22 @@ CONFIGRET WINAPI CMP_Init_Detection( } +/*********************************************************************** + * CMP_RegisterNotification [SETUPAPI.@] + */ +CONFIGRET +WINAPI +CMP_RegisterNotification(IN HANDLE hRecipient, + IN LPVOID lpvNotificationFilter, + IN DWORD dwFlags, + OUT PULONG pluhDevNotify) +{ + FIXME("Stub %p %p %lu %p\n", hRecipient, lpvNotificationFilter, dwFlags, pluhDevNotify); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return CR_FAILURE; +} + + /*********************************************************************** * CMP_Report_LogOn [SETUPAPI.@] */ @@ -179,6 +176,37 @@ CONFIGRET WINAPI CMP_Report_LogOn( } +/*********************************************************************** + * CMP_UnregisterNotification [SETUPAPI.@] + */ +CONFIGRET +WINAPI +CMP_UnregisterNotification(IN HDEVNOTIFY handle) +{ + FIXME("Stub %p\n", handle); + return CR_SUCCESS; +} + + +/*********************************************************************** + * CMP_WaitNoPendingInstallEvents [SETUPAPI.@] + */ +DWORD WINAPI CMP_WaitNoPendingInstallEvents( + DWORD dwTimeout) +{ + HANDLE hEvent; + DWORD ret; + + hEvent = OpenEventW(SYNCHRONIZE, FALSE, L"Global\\PnP_No_Pending_Install_Events"); + if (hEvent == NULL) + return WAIT_FAILED; + + ret = WaitForSingleObject(hEvent, dwTimeout); + CloseHandle(hEvent); + return ret; +} + + /*********************************************************************** * CMP_WaitServicesAvailable [SETUPAPI.@] */ @@ -1549,6 +1577,44 @@ CM_Get_Class_Name_ExW( } +/*********************************************************************** + * CM_Get_Class_Registry_PropertyA [SETUPAPI.@] + */ +CONFIGRET WINAPI CM_Get_Class_Registry_PropertyA( + LPGUID ClassGuid, ULONG ulProperty, PULONG pulRegDataType, + PVOID Buffer, PULONG pulLength, ULONG ulFlags, HMACHINE hMachine) +{ + FIXME("\n"); + return CR_CALL_NOT_IMPLEMENTED; +} + + +/*********************************************************************** + * CM_Get_Class_Registry_PropertyW [SETUPAPI.@] + */ +CONFIGRET WINAPI CM_Get_Class_Registry_PropertyW( + LPGUID ClassGuid, ULONG ulProperty, PULONG pulRegDataType, + PVOID Buffer, PULONG pulLength, ULONG ulFlags, HMACHINE hMachine) +{ + FIXME("\n"); + +#if 0 + if (ClassGuid == NULL || + pulLength == NULL) + return 3; + + if (ulFlags != 0) + return CR_INVALID_FLAG; + + if (pSetupStringFromGuid(ClassGuid, ebp_6c, 0x27) != 0) + return 1F; +#endif + + + return CR_CALL_NOT_IMPLEMENTED; +} + + /*********************************************************************** * CM_Get_Depth [SETUPAPI.@] */ diff --git a/reactos/dll/win32/setupapi/setupapi.spec b/reactos/dll/win32/setupapi/setupapi.spec index 0a64df095b8..c2ee1836809 100644 --- a/reactos/dll/win32/setupapi/setupapi.spec +++ b/reactos/dll/win32/setupapi/setupapi.spec @@ -62,8 +62,8 @@ @ stdcall CM_Get_Class_NameW(ptr wstr ptr long) @ stdcall CM_Get_Class_Name_ExA(ptr str ptr long long) @ stdcall CM_Get_Class_Name_ExW(ptr wstr ptr long long) -@ stub CM_Get_Class_Registry_PropertyA -@ stub CM_Get_Class_Registry_PropertyW +@ stdcall CM_Get_Class_Registry_PropertyA(ptr long ptr ptr ptr long ptr) +@ stdcall CM_Get_Class_Registry_PropertyW(ptr long ptr ptr ptr long ptr) @ stdcall CM_Get_Depth(ptr long long) @ stdcall CM_Get_Depth_Ex(ptr long long long) @ stub CM_Get_DevNode_Custom_PropertyA diff --git a/reactos/dll/win32/setupapi/stubs.c b/reactos/dll/win32/setupapi/stubs.c index e4003a6eacf..61599e6a5ca 100644 --- a/reactos/dll/win32/setupapi/stubs.c +++ b/reactos/dll/win32/setupapi/stubs.c @@ -22,25 +22,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(setupapi); -/*********************************************************************** - * TPWriteProfileString (SETUPX.62) - */ -BOOL WINAPI TPWriteProfileString16( LPCSTR section, LPCSTR entry, LPCSTR string ) -{ - FIXME( "%s %s %s: stub\n", debugstr_a(section), debugstr_a(entry), debugstr_a(string) ); - return TRUE; -} - - -/*********************************************************************** - * suErrorToIds (SETUPX.61) - */ -DWORD WINAPI suErrorToIds16( WORD w1, WORD w2 ) -{ - FIXME( "%x %x: stub\n", w1, w2 ); - return 0; -} - /*********************************************************************** * pSetupRegistryDelnode(SETUPAPI.@) */ @@ -159,35 +140,6 @@ SetupDiUnremoveDevice( } -/*********************************************************************** - * CMP_RegisterNotification(SETUPAPI.@) - */ -CONFIGRET -WINAPI -CMP_RegisterNotification( - IN HANDLE hRecipient, - IN LPVOID lpvNotificationFilter, - IN DWORD dwFlags, - OUT PULONG pluhDevNotify) -{ - FIXME ("Stub %p %p %lu %p\n", hRecipient, lpvNotificationFilter, dwFlags, pluhDevNotify); - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return CR_FAILURE; -} - - -/*********************************************************************** - * CMP_UnregisterNotification(SETUPAPI.@) - */ -CONFIGRET -WINAPI -CMP_UnregisterNotification(IN HDEVNOTIFY handle) -{ - FIXME ("Stub %p\n", handle); - return CR_SUCCESS; -} - - WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInterfaceAlias(IN HDEVINFO DeviceInfoSet, IN PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData, IN CONST GUID *AliasInterfaceClassGuid, OUT PSP_DEVICE_INTERFACE_DATA AliasDeviceInterfaceData) { FIXME("%p %p %p %p %p stub\n", DeviceInfoSet, DeviceInterfaceData, AliasInterfaceClassGuid, AliasDeviceInterfaceData);