Changelog:
- Minor refactoring of the `Utils' class.
- Moved loading configuration from a file to
LoadConfiguration()
. - Removed
IsAvailable()
function, which was found to be unnecessary. - Moved device property extraction to separate function
ExtractProperties()
. - Added more detailed logging throughout the device detection and connection process.
- Added logic to handle the scenario where a saved device is not found by removing the configuration file.
- Added support for saving and loading previously selected devices from a configuration file (
device_config.cfg
). - Introduced
Utils::PrintCenteredText
for displaying messages to the user in a more visually appealing way on console. - Added a device selection menu that displays a numbered list of found devices if no device matches, prompting the user to choose.
- Implemented a more reliable device detection mechanism has been implemented that searches for devices using VID/PID templates, display names, or a combination of both.