GetVolumeInformation( "C:", NULL, 0, NULL, NULL, NULL, szFs, 8);
For the first parameter, the root directory must be extracted from the file name. If the file name doesn't contain a drive specification, that parameter should be chosen as NULL, then GetVolumeInformation uses the current drive.
What about paths starting with \?