首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

判断WINDOWS文件系统是FAT32仍是NTFS的API是什么

2012-09-10 
判断WINDOWS文件系统是FAT32还是NTFS的API是什么?找没找着,搜也没搜着。[解决办法]BOOLGetVolumeInformatio

判断WINDOWS文件系统是FAT32还是NTFS的API是什么?
找没找着,搜也没搜着。

[解决办法]
BOOL GetVolumeInformation( 
LPCTSTR lpRootPathName, // root directory 
LPTSTR lpVolumeNameBuffer, // volume name buffer 
DWORD nVolumeNameSize, // length of name buffer 
LPDWORD lpVolumeSerialNumber, // volume serial number 
LPDWORD lpMaximumComponentLength, // maximum file name length 
LPDWORD lpFileSystemFlags, // file system options 
LPTSTR lpFileSystemNameBuffer, // file system name buffer 
DWORD nFileSystemNameSize // length of file system name buffer 
); 

API函数GetVolumeInformation来获取磁盘分区的信息。具体的调用方法请参阅MSDN: 

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fsys_6wfi.asp 

还可以在MSDN中找到一个相关的示例: 
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fsys_2acz.asp
[解决办法]
来晚了,楼上正解
[解决办法]

探讨
BOOL GetVolumeInformation(
LPCTSTR lpRootPathName, // root directory
LPTSTR lpVolumeNameBuffer, // volume name buffer
DWORD nVolumeNameSize, // length of name buffer
LPDWORD lpVolumeSe……

[解决办法]
TCHAR RootPathName[] = TEXT("C:\\"); //查询分区根目录

//TCHAR lpVolumeNameBuffer[255]; //硬盘卷标名称 

//DWORD dwVolumeSerialNumber; //序列号 

//DWORD dwMaximumComponentLength; //文件名最大长度 

//DWORD FileSystemFlags; //文件系统标志

TCHAR FSType[20];

if (!GetVolumeInformationA(RootPathName, NULL, 0,

NULL, 

NULL,

NULL, FSType, sizeof(FSType) ) )

{

DWORD error = GetLastError();

MessageBox (NULL, "Get FileSystem error", TEXT ("myGegProgram"), 0);

exit (0);

}

if (strcmp(FSType, "FAT") == 0)
 //是FAT32
{

//你的代码
}

else if (strcmp(FSType, "NTFS") == 0)
 //是NTFS
{

//你的代码
}

热点排行