2023 Update:
I'm currently slowly working on a DLL that will help me interface with PTP devices on Windows natively.
I spent a lot of time writing code that will interface with the ancient WIA driver, but I had to scrap it because it was too slow.
This time, I'm interfacing with WPD (Windows Portable Devices). Like Wia, the driver is completely different compared to something like libusb.
WPD requires sending the command opcode, parameters, and data separately, letting Windows handle transaction IDs, and determining whether the response will have a data phase or not before sending the command. My camlib library is young enough for me to port it, but existing code may need major refactoring.
This DLL will be written in C++ and compiled with Visual Studio, and I will then host the binaries on Github.
Moving mlinstall from ptpcam to camlib will be relatively easy, but I might end up rewriting it the front end and trying another GUI library. GTK is nice but I'd like to try something different. Open to suggestions.