diff --git a/dll/win32/setupapi/cfgmgr.c b/dll/win32/setupapi/cfgmgr.c index d1a46745b8b..859b0e45b58 100644 --- a/dll/win32/setupapi/cfgmgr.c +++ b/dll/win32/setupapi/cfgmgr.c @@ -1796,7 +1796,7 @@ CM_Disable_DevNode_Ex( LPWSTR lpDevInst; CONFIGRET ret; - FIXME("CM_Disable_DevNode_Ex(%p %lx %p)\n", + TRACE("CM_Disable_DevNode_Ex(%p %lx %p)\n", dnDevInst, ulFlags, hMachine); if (!pSetupIsUserAdmin()) diff --git a/dll/win32/setupapi/devinst.c b/dll/win32/setupapi/devinst.c index 14a9a5faa10..de4080bcf20 100644 --- a/dll/win32/setupapi/devinst.c +++ b/dll/win32/setupapi/devinst.c @@ -5045,12 +5045,28 @@ ResetDevice( #endif } -static BOOL StopDevice( +static BOOL +StopDevice( IN HDEVINFO DeviceInfoSet, IN PSP_DEVINFO_DATA DeviceInfoData) { +#ifndef __WINESRC__ + struct DeviceInfoSet *set = (struct DeviceInfoSet *)DeviceInfoSet; + struct DeviceInfo *deviceInfo = (struct DeviceInfo *)DeviceInfoData->Reserved; + CONFIGRET cr; + + cr = CM_Disable_DevNode_Ex(deviceInfo->dnDevInst, 0, set->hMachine); + if (cr != CR_SUCCESS) + { + SetLastError(GetErrorCodeFromCrCode(cr)); + return FALSE; + } + + return TRUE; +#else FIXME("Stub: StopDevice(%p %p)\n", DeviceInfoSet, DeviceInfoData); return TRUE; +#endif } /***********************************************************************