GetVolumeInformation-讀取文件系統(tǒng)信息

字號(hào):

//聲明:GetVolumeInformation(
    lpRootPathName: PChar;        {磁盤(pán)驅(qū)動(dòng)器代碼字符串}
    lpVolumeNameBuffer: PChar;      {磁盤(pán)驅(qū)動(dòng)器卷標(biāo)名稱(chēng)}
    nVolumeNameSize: DWORD;       {磁盤(pán)驅(qū)動(dòng)器卷標(biāo)名稱(chēng)長(zhǎng)度}
    lpVolumeSerialNumber: PDWORD;    {磁盤(pán)驅(qū)動(dòng)器卷標(biāo)序列號(hào)}
    var lpMaximumComponentLength: DWORD; {系統(tǒng)允許的文件名長(zhǎng)度}
    var lpFileSystemFlags: DWORD;    {文件系統(tǒng)標(biāo)識(shí)}
    lpFileSystemNameBuffer: PChar;    {文件操作系統(tǒng)名稱(chēng)}
    nFileSystemNameSize: DWORD      {文件操作系統(tǒng)名稱(chēng)長(zhǎng)度}
    ): 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('磁盤(pán)驅(qū)動(dòng)器代碼字符串:'+ #9#9 +'%s',[RootPath]));
    Add(Format('磁盤(pán)驅(qū)動(dòng)器卷標(biāo)名稱(chēng):'+ #9#9 +'%s',[VolName]));
    Add(Format('磁盤(pán)驅(qū)動(dòng)器卷標(biāo)序列號(hào):'+ #9#9 +'%s',[IntToHex(SerialNumber,8)]));
    Add(Format('系統(tǒng)允許的文件名長(zhǎng)度:'+ #9 +'%d',[MaxCLength]));
    Add(Format('文件系統(tǒng)標(biāo)識(shí):'+ #9#9#9 +'%d',[FileSysFlag]));
    Add(Format('文件系統(tǒng)名稱(chēng):'+ #9#9#9 +'%s',[FileSysName]));
    end;
    end;//效果圖: