KB_Soft Group - Software Vendor's Development Partner
Start page
Site map

Hardware Inventory Tool



To implement a set of C++ classes able to manage multiple hardware scanners. The management implies running the specified scanners, getting the scanning results, and their processing (i.e. filtering, combining the data obtained from scanners, which provide different approaches to getting the data about the same devices, converting the results to the specified format).


To widen the capabilities of the Hardware Inventory utility, it was necessary to integrate it with a number of scanners (i.e. program components getting the information about devices of a certain class, e.g. PCI or SCSI). The scanners differed not only in the type of the target device, but also in the way they were implemented. For instance, to scan the PCI devices, there were four scanners available. It was necessary to implement the mechanism providing the flexible use of various scanners.

Technical peculiarities

A set of C++ classes and interfaces was designed and implemented that allowed to start any scanner, get any data from it (the data was got in the form of the named properties of a string, integer, or vector type). The results of scanning were processed (combined,
  filtered, and converted to the specified format). The implemented system is flexible and extensible: it is based on the data managed schema, so adding new scanners, properties, or result forming rules practically will not require any system code corrections.