首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 计算机考试 > 等级考试 > 复习指导 >

C++基础解析十五

2008-11-26 
C++GetDriveType-获取磁盘类型;GetVolumeInformation-读取文件系统信息

    一、C++GetDriveType-获取磁盘类型

    //声明:GetDriveType(
  lpRootPathName: PChar {磁盘根目录}
  ): UINT;//返回值:DRIVE_UNKNOWN   = 0; {未知}
  DRIVE_NO_ROOT_DIR = 1; {可移动磁盘}
  DRIVE_REMOVABLE  = 2; {软盘}
  DRIVE_FIXED    = 3; {本地硬盘}
  DRIVE_REMOTE   = 4; {网络磁盘}
  DRIVE_CDROM    = 5; {CD-ROM}
  DRIVE_RAMDISK   = 6; {RAM 磁盘}//考试大举例:
  procedure TForm1.FormCreate(Sender: TObject);
  var
  c: Cardinal;
  begin
  c := GetDriveType('C:');
  ShowMessage(IntToStr(c)); {3; 说明是本地硬盘}
  end;

    二、GetVolumeInformation-读取文件系统信息

    //声明:GetVolumeInformation(
  lpRootPathName: PChar;        {磁盘驱动器代码字符串}
  lpVolumeNameBuffer: PChar;      {磁盘驱动器卷标名称}
  nVolumeNameSize: DWORD;       {磁盘驱动器卷标名称长度}
  lpVolumeSerialNumber: PDWORD;    {磁盘驱动器卷标序列号}
  var lpMaximumComponentLength: DWORD; {系统允许的最大文件名长度}
  var lpFileSystemFlags: DWORD;    {文件系统标识}
  lpFileSystemNameBuffer: PChar;    {文件操作系统名称}
  nFileSystemNameSize: DWORD      {文件操作系统名称长度}
  ): BOOL;//举例:procedure TForm1.FormCreate(Sender: TObject);
  var
  RootPath: array[0..20] of Char;
  VolName: array[0..255] of Char;
  SerialNumber: DWORD;
  MaxCLength: DWORD;
  FileSysFlag: DWORD;
  FileSysName: array[0..255] of Char;
  begin
  RootPath := 'C:';
  GetVolumeInformation(
  RootPath,
  VolName,
  255,
  @SerialNumber,
  MaxCLength,
  FileSysFlag,
  FileSysName,
  255
  );
  Memo1.Clear;
  with Memo1.Lines do
  begin
  Add(Format('磁盘驱动器代码字符串:'+ #9#9 +'%s',[RootPath]));
  Add(Format('磁盘驱动器卷标名称:'+ #9#9 +'%s',[VolName]));
  Add(Format('磁盘驱动器卷标序列号:'+ #9#9 +'%s',[IntToHex(SerialNumber,8)]));
  Add(Format('系统允许的最大文件名长度:'+ #9 +'%d',[MaxCLength]));
  Add(Format('文件系统标识:'+ #9#9#9 +'%d',[FileSysFlag]));
  Add(Format('文件系统名称:'+ #9#9#9 +'%s',[FileSysName]));
  end;
  end;//效果图:

 


3COME考试频道为您精心整理,希望对您有所帮助,更多信息在http://www.reader8.net/exam/

热点排行