- Fix some error codes - Add stubs for SetupDiGetClassImageList, SetupDiGetClassImageListExA/W, SetupDiDestroyClassImageList Modified: trunk/reactos/lib/setupapi/devinst.c Modified: trunk/reactos/lib/setupapi/setupapi.spec Modified: trunk/reactos/lib/setupapi/stubs.c _____
Modified: trunk/reactos/lib/setupapi/devinst.c --- trunk/reactos/lib/setupapi/devinst.c 2005-11-20 20:18:00 UTC (rev 19385) +++ trunk/reactos/lib/setupapi/devinst.c 2005-11-20 20:19:05 UTC (rev 19386) @@ -2774,7 +2774,7 @@
else { ERR("Invalid Flags parameter!\n"); - SetLastError(ERROR_INVALID_PARAMETER); + SetLastError(ERROR_INVALID_FLAGS); return INVALID_HANDLE_VALUE; }
@@ -3805,7 +3805,7 @@ else if (CreationFlags & ~(DICD_GENERATE_ID | DICD_INHERIT_CLASSDRVS)) { TRACE("Unknown flags: 0x%08lx\n", CreationFlags & ~(DICD_GENERATE_ID | DICD_INHERIT_CLASSDRVS)); - SetLastError(ERROR_INVALID_PARAMETER); + SetLastError(ERROR_INVALID_FLAGS); } else { @@ -4706,7 +4706,7 @@ else if (OpenFlags & ~(DIOD_CANCEL_REMOVE | DIOD_INHERIT_CLASSDRVS)) { TRACE("Unknown flags: 0x%08lx\n", OpenFlags & ~(DIOD_CANCEL_REMOVE | DIOD_INHERIT_CLASSDRVS)); - SetLastError(ERROR_INVALID_PARAMETER); + SetLastError(ERROR_INVALID_FLAGS); } else if (DeviceInfoData && DeviceInfoData->cbSize != sizeof(SP_DEVINFO_DATA)) SetLastError(ERROR_INVALID_USER_BUFFER); @@ -4755,6 +4755,8 @@ RegCloseKey(hEnumKey); if (rc != ERROR_SUCCESS) { + if (rc == ERROR_FILE_NOT_FOUND) + rc = ERROR_NO_SUCH_DEVINST; SetLastError(rc); return FALSE; } _____
Modified: trunk/reactos/lib/setupapi/setupapi.spec --- trunk/reactos/lib/setupapi/setupapi.spec 2005-11-20 20:18:00 UTC (rev 19385) +++ trunk/reactos/lib/setupapi/setupapi.spec 2005-11-20 20:19:05 UTC (rev 19386) @@ -291,7 +291,7 @@
@ stub SetupDiDeleteDevRegKey @ stdcall SetupDiDeleteDeviceInfo(long ptr) @ stub SetupDiDeleteDeviceInterfaceData -@ stub SetupDiDestroyClassImageList +@ stdcall SetupDiDestroyClassImageList(ptr) @ stdcall SetupDiDestroyDeviceInfoList(long) @ stdcall SetupDiDestroyDriverInfoList(long ptr long) @ stub SetupDiDrawMiniIcon @@ -313,9 +313,9 @@ @ stdcall SetupDiGetClassDevsExW(ptr wstr ptr long ptr wstr ptr) @ stdcall SetupDiGetClassDevsW(ptr ptr long long) @ stub SetupDiGetClassImageIndex -@ stub SetupDiGetClassImageList -@ stub SetupDiGetClassImageListExA -@ stub SetupDiGetClassImageListExW +@ stdcall SetupDiGetClassImageList(ptr) +@ stdcall SetupDiGetClassImageListExA(ptr str ptr) +@ stdcall SetupDiGetClassImageListExW(ptr wstr ptr) @ stub SetupDiGetClassInstallParamsA @ stub SetupDiGetClassInstallParamsW @ stub SetupDiGetDeviceInfoListClass _____
Modified: trunk/reactos/lib/setupapi/stubs.c --- trunk/reactos/lib/setupapi/stubs.c 2005-11-20 20:18:00 UTC (rev 19385) +++ trunk/reactos/lib/setupapi/stubs.c 2005-11-20 20:19:05 UTC (rev 19386) @@ -175,3 +175,48 @@
FIXME ("Stub %p\n",FileLogHandle); return TRUE; } + + +/********************************************************************** * + * SetupDiGetClassImageList(SETUPAPI.@) + */ +BOOL WINAPI SetupDiGetClassImageList(PSP_CLASSIMAGELIST_DATA ClassImageListData) +{ + FIXME ("Stub %p\n", ClassImageListData); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** * + * SetupDiGetClassImageListExA(SETUPAPI.@) + */ +BOOL WINAPI SetupDiGetClassImageListExA(PSP_CLASSIMAGELIST_DATA ClassImageListData, + PCSTR MachineName, PVOID Reserved) +{ + FIXME ("Stub %p %s %p\n", ClassImageListData, debugstr_a(MachineName), Reserved); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** * + * SetupDiGetClassImageListExW(SETUPAPI.@) + */ +BOOL WINAPI SetupDiGetClassImageListExW(PSP_CLASSIMAGELIST_DATA ClassImageListData, + PCWSTR MachineName, PVOID Reserved) +{ + FIXME ("Stub %p %s %p\n", ClassImageListData, debugstr_w(MachineName), Reserved); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** * + * SetupDiDestroyClassImageList(SETUPAPI.@) + */ +BOOL WINAPI SetupDiDestroyClassImageList(PSP_CLASSIMAGELIST_DATA ClassImageListData) +{ + FIXME ("Stub %p\n", ClassImageListData); + return TRUE; +}