Natrix
Новичок
Всем доброго времени суток.
Подскажите пожалуйста как в данном скрипте назначить за единицу измерения ГБ вместо МБ?
И как отображать не только целые числа но и скажем до сотых.
т.е. не Free: 150250МB а Free: 150.25GB
Подскажите пожалуйста как в данном скрипте назначить за единицу измерения ГБ вместо МБ?
И как отображать не только целые числа но и скажем до сотых.
т.е. не Free: 150250МB а Free: 150.25GB
Код:
const
NeedSize = add size to MB;
DRIVE_UNKNOWN = 0;
DRIVE_NO_ROOT_DIR = 1;
DRIVE_REMOVEABLE = 2;
DRIVE_FIXED = 3;
DRIVE_REMOTE = 4;
DRIVE_CDROM = 5;
DRIVE_RAMDISK = 6;
function GetLogicalDrives: DWORD;
external 'GetLogicalDrives@kernel32.dll stdcall';
function GetDriveType(nDrive: String): Longint;
external 'GetDriveTypeA@kernel32.dll stdcall';
procedure InitializeWizard();
var
Path: String;
FreeMB, TotalMB: Cardinal;
ListBox: TListBox;
drives: DWORD;
i: integer;
begin
ListBox:= TListBox.Create(WizardForm);
ListBox.Top:= 120;
ListBox.Width:= 300;
ListBox.Height:= ScaleY(90);
ListBox.Parent:= WizardForm.SelectDirPage;
drives:= GetLogicalDrives();
for i:= 0 to 31 do
begin
if (drives and (1 shl i)) > 0 then
begin
Path:= chr(ord('A')+i)+':';
if GetDriveType(Path) = DRIVE_FIXED then
begin
GetSpaceOnDisk(Path, True, FreeMB, TotalMB);
ListBox.Items.Add(Path + ' - Total: ' + IntToStr(TotalMB) +
'MB - Free: ' + IntToStr(FreeMB) + 'MB');
end;
end;
end;
end;
function NextButtonClick(CurPageID: Integer): Boolean;
var
Path: String;
FreeMB, TotalMB: Cardinal;
begin
Result:= True;
if CurPageID = wpSelectDir then
begin
Path:= ExtractFileDrive(WizardForm.DirEdit.Text);
GetSpaceOnDisk(Path, True, FreeMB, TotalMB);
if FreeMB < NeedSize then
begin
MsgBox('Alarm info', mbInformation, MB_OK)
Result:= False;
end;
end;
end;
Последнее редактирование: