Hi Tyranin,
>I've managed to find out how many blocks are available using IFileSystemImage.FreeMediaBlocks and IFileSystemImage.UsedBlocks. However I can't find a method for getting the Total Size of a DVD disk, and I was wondering if there is method for retrieving this information.
It is because IFileSystemImage is an image, not an object representing the drive. i.e. : you can stretch and shrink image as much as you want. usually FreeMediaBlocks is determined from the specified drive.
You might be interested in IDiscFormat2Data::get_TotalSectorsOnMedia
http://msdn.microsoft.com/en-us/library/aa364881%28VS.85%29.aspx---
The difference between those two methods is documented on msdn:
http://msdn.microsoft.com/en-us/library/aa365374%28VS.85%29.aspxhttp://msdn.microsoft.com/en-us/library/aa365375%28VS.85%29.aspxSo, basically: get_MediaPhysicallyBlank asks drive if the inserted media is blank, get_MediaHeuristicallyBlank reads information from the media and judge if the media is blank, according to this information. We have get_MediaHeuristicallyBlank because some media can not be erased physically.
There are few options for erasing discs: issue erase command to the drive (quick/full erase) and owerwriting by software. Most medias uses drive's erase command. BUT: there is no "erase" command for the DVD+RW and there is no "erased" state of DVD+RW for the drive.
Thus:
>can anyone explain to me what IDiscFormat2Data.MediaHeuristicallyBlank is all about. If it returns true, does that mean the disk is completely blank as in All zeros?
no, some data can be untouched
>If you ask for MediaPhysicallyBlank
again: no. MediaPhysicallyBlank means that drive considers media to be blank (no mater what pattern, what data it uses to determine that the media is blank)
With Regards,
Mikhail