Карта сайтаСсылкиКонтакты

Показать дисковое пространство

PDF Печать
Статьи

Чтобы получить свободное дисковое пространство, выполните следующее:

Поместите на форму компоненты, показанные на изображении и запишите следующий код:

Расположение элементов на форме

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    btnCalculate: TButton;
    cmbDrive: TComboBox;
    Label4: TLabel;
    GroupBox1: TGroupBox;
    lblCapacity: TLabel;
    lblFreeSpace: TLabel;
    lblUsedSpace: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    procedure btnCalculateClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnCalculateClick(Sender: TObject);
var
  Free1,free2,Total1:Int64;
begin
  GetDiskFreeSpaceEx(pchar(cmbDrive.Text), free1, total1, @free2);
  lblCapacity.Caption := 'Объем : ' + IntToStr(Total1) +
      ' Байт     '+ floatToStr(Total1 div (1024*1024)) + ' MB';
  lblFreeSpace.Caption := 'Свободное пространство : ' +
      IntToStr(Free1) + ' Байт     '+ floatToStr(Free1 div (1024*1024)) + ' MB';
  lblUsedSpace.Caption := 'Используемое пространство : ' +
      IntToStr(Total1-Free1) + ' Байт     '+ floatToStr((Total1-Free1) div (1024*1024)) + ' MB';
end;

procedure TForm1.FormCreate(Sender: TObject);
var
  i: Integer;
begin
  for i:= Ord('A') to Ord('Z') do
    begin
      if  GetDriveType(PChar(Char(i)+':\'))=3  then
        cmbDrive.Items.Add(Char(i)+':\');
      end;
  cmbDrive.Text:= cmbDrive.Items.Strings[0];
end;

end.
Результат работы приложения по определению дискового пространства
 

Добавить комментарий


Защитный код
Обновить