While playing attound with the SCSI commands to get direct access to USB devices I found the reason for the physical device size detection problem. Because opening a device with restricted user rights fails when you flag read/write operations, I removed them during the detection process. Unfortunately they are needed to retrieve the physical disk size of a device. The volume based i/o operations are not concerned, because opening a volume handle for reading or writing does not require admin access.
With version 1.27 the detection process first tries to open the device with read/write access. If this fails, the device is opened without read/write access. In this situation the physical device size can not be determined, but volume operations work fine.
I also cleaned up the source code and did some testing with the SCSI command set. Using the information from the book, that I bought 2 months ago, and the spti sample from the Windows DDK, I was able to send an INQUIRY command directly to the device and retrieve a valid return from it. I still have to test the READ and WRITE commands, but for now it looks promising.
Tags: USB Image Tool