I've noticed, that some USB storage devices don't register in Windows as regular drives, in that they don't even get assigned a drive letter. Therefore, I can't apparently access them using the standard file operations C API.
What are the WinAPI calls I can use to do some normal file operations on those strange devices - so:
Also, what are the general keywords by which those kinds devices/protocol are known/called?
By default, Windows gave my portable USB drive the letter H. If your drive has no letter or you want to change it, then right-click in the white space to the right of the drive letter and choose Change Drive Letter and Paths. Click the Change button in the dialog box and then pick a new letter from the drop-down list.
On Device Manager screen, expand the entry for Universal Serial BUS Controllers > right-click on the USB Drive and click on Enable. Similarly, you can use the above steps to enable USB Mass Storage Device, if you are unable to access an external storage device on your computer.
If you're talking about mobile devices that appears like mounted volumes but without any mounted points, well they are called Windows Portable Devices and they are not mounted volumes.
Windows doesn't access the file system directly, it only communicates with them through the Media Transfer Protocol (MTP) or Picture Transfert Protocol (PTP) and creates a shell namespace extension to present a virtual folder to the user.
If you want to communicate with these kind of devices, then you most probably want to use the WPD API.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With