Try to look at this tool, "dd for Windows" here :
http://www.chrysocome.net/dd

The source code is availabe (GPL). You can find in the HTML webpage this information about getting the "real" size :
>
> Using --size
>
> Traditionally when using dd, if you wanted to copy an entire device, you did not specify a block count and dd would read until it reached the end of the device. If you tried to read past the end of the device, the data up to the end of the device would be returned and if you kept reading you would get an error message. Windows however does not always do this so --size will tell dd to figure out the size of the device and make sure it does not read past that point. This is important for USB sticks which stop working if you read past the end of them. This is not on by default because getting the correct size of the device is not always possible. Some devices also keep returning bogus data past the end of the device without returning a suitable error code



Hope this helps.
Sincerely,
TheProphet.



I'm not asking a official document to tell me, hi dude,  Minimum supported client of IOCTL_DISK_GET_DRIVE_GEOMETRY_EX is  Windows XP, it is not supported by W2k, I asked the question here because I wanna to know the fundamental "why".
Still thank you,friend!

_______________________________________________ Ros-dev mailing list Ros-dev@reactos.org http://www.reactos.org/mailman/listinfo/ros-dev