title: GetDiskFreeSpaceEx reports wrong number of free bytes
body: <pre><code>__int64 i64FreeBytes
  unsigned __int64 lpFreeBytesAvailableToCaller,
                   lpTotalNumberOfBytes,
                   lpTotalNumberOfFreeBytes; // variables used to obtain 
                                             // the free space on the  drive
  
  GetDiskFreeSpaceEx (Manager.capDir,
  (PULARGE_INTEGER)&amp;lpFreeBytesAvailableToCaller,
  (PULARGE_INTEGER)&amp;lpTotalNumberOfBytes,
  (PULARGE_INTEGER)&amp;lpTotalNumberOfFreeBytes);
  
  i64FreeBytes = lpTotalNumberOfFreeBytes;
  _tprintf(_T ("Number of bytes free on the drive:%I64u \n"),
       lpTotalNumberOfFreeBytes);
  </code></pre>
  
  <p>I am working on a data management routine which is a Windows CE command line application. The above code shows how I get the number of free bytes on a particular drive which contains the folder Manager.capdir (it is the variable containing the full path name of the directory).</p>
  
  <p>My question is, the number of free bytes reported by the above code (the _tprintf statement) doesn't match with the number of free bytes of the drive (which i check by doing a right click on the drive). </p>
  
  <p>I wish to know if the reason for this difference?</p>