Author: ekohl Date: Thu Feb 11 21:23:48 2010 New Revision: 45578
URL: http://svn.reactos.org/svn/reactos?rev=45578&view=rev Log: [DEVMGR] Display Matching Device ID.
Modified: trunk/reactos/dll/win32/devmgr/advprop.c
Modified: trunk/reactos/dll/win32/devmgr/advprop.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/devmgr/advprop.c?... ============================================================================== --- trunk/reactos/dll/win32/devmgr/advprop.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/devmgr/advprop.c [iso-8859-1] Thu Feb 11 21:23:48 2010 @@ -852,6 +852,52 @@
static VOID +DisplayMatchingDeviceId(IN PDEVADVPROP_INFO dap, + IN HWND hwndListView) +{ + HDEVINFO DeviceInfoSet; + PSP_DEVINFO_DATA DeviceInfoData; + WCHAR szBuffer[256]; + HKEY hKey; + DWORD dwSize; + DWORD dwType; + + if (dap->CurrentDeviceInfoSet != INVALID_HANDLE_VALUE) + { + DeviceInfoSet = dap->CurrentDeviceInfoSet; + DeviceInfoData = &dap->CurrentDeviceInfoData; + } + else + { + DeviceInfoSet = dap->DeviceInfoSet; + DeviceInfoData = &dap->DeviceInfoData; + } + + hKey = SetupDiOpenDevRegKey(DeviceInfoSet, + DeviceInfoData, + DICS_FLAG_GLOBAL, + 0, + DIREG_DRV, + KEY_QUERY_VALUE); + if (hKey != INVALID_HANDLE_VALUE) + { + dwSize = 256 * sizeof(WCHAR); + if (RegQueryValueEx(hKey, + L"MatchingDeviceId", + NULL, + &dwType, + (LPBYTE)szBuffer, + &dwSize) == ERROR_SUCCESS) + { + SetListViewText(hwndListView, 0, szBuffer); + } + + RegCloseKey(hKey); + } +} + + +static VOID DisplayDeviceProperties(IN PDEVADVPROP_INFO dap, IN HWND hwndComboBox, IN HWND hwndListView) @@ -873,7 +919,6 @@ SetListViewText(hwndListView, 0, dap->szDeviceID); break;
- case 1: /* Hardware ID */ DisplayDevicePropertyText(dap, hwndListView, @@ -886,10 +931,10 @@ SPDRP_COMPATIBLEIDS); break;
-#if 0 case 3: /* Matching ID */ + DisplayMatchingDeviceId(dap, + hwndListView); break; -#endif
case 4: /* Service */ DisplayDevicePropertyText(dap,