I’ve just altered juce code to handle plug-and-play events for my device,
and would like to suggest that the windowProc() function in juce_win32_Windowing.cpp have a WM_DEVICECHANGE event added to it’s list of messages that are handled.
If that were done, and a public Component based function were called as a result (e.g. peer->handleDeviceChanged()) then users could override that function in one of their subclasses to handle windows Plug-and-Play events. Perhaps there’s an even better solution that wouldn’t effect other platforms?
Without this change, the easiest way to handle plug-and-play on Windows, without altering juce code is to create a new window, with a windowProc that handles the WM_DEVICECHANGED event, and then make that window invisible.