I recently had to clone one USB drive to another on windows. My drive is a multiboot with additional software so I didn't want to just copy all files on the FS. DD was a clear choice, but I wasn't on linux so there were a few things I had to do to get it working.
I had cygwin installed and did the following.
first I had to figure out what /dev/sdX device my f: volume was. To do so run this command in cygwin. (TIP: Make sure you start cygwin with admin privs.. *Right click on cygwin and "Run as Administrator")
which should output:
8 0 3813383838 sda
8 1 4031 sda3 C:\
8 15 30588303 sdb
8 15 30588303 sdb1 E:\
8 21 30530020 sdc
8 22 30530020 sdc1 F:\
Here you can clearly see for me to clone my F: drive to my E: drive I'd issue the following command.
There is one more step actually, you have to find the root of your device. Look for an sd* that has a size of your device. This whould be easy as the size should be well known such as 8GB, 16GB, 32GB expanded as bytes as shown above.
dd if=/dev/sdc of=/dev/sdb bs=8M
My image was 32gb.. and I didn't want to just sit and wait with a blinking cursor.. I wanted to see progress so I installed "pv" in cygwin.
dd if=/dev/sdc | pv | dd of=/dev/sdb bs=8M
Now if you want to copy the thumbdrive to an image do the following.
dd if=/dev/sdX | pv | dd of=/cygdrive/c/Users/Myname/Desktop/mythumbdrive.img bs=8M
Hope this helps