HID USB devices

Hi all,
I’m trying to interface with an HID-compliant USB device, and from what I understand after a good bit of research, I can read/write to such a device by basically treating it as a FileStream. With the device in question, I have the VID and the PID, and I understand that in order to make the FileStream for the device I need the path of the device, which, if I understand it properly, will not always be the same when the device is connected.

I’m trying to figure out how I could enumerate all the HID devices connected to the machine (preferably, this would be platform independent), so that I can find my device at runtime.

I was wondering if anyone had attempted to do something similar, and if so, how they tackled the problem?

I’ve managed to do something similar with a DLL plugin that searched the windows registry.

I’m not sure you’re going to find a one size fits all solution for both Windows and Mac, so I would just use platform dependent compilation e.g. #if UNITY_STANDALONE_WIN.