Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 1133
Благодарности: 581

Профиль | Отправить PM | Цитировать


Цитата YURSHAT:
Как реализовать "Список жестких дисков и свободного места" через get_hw_caps.dll »
Вот простой пример использования функций:
Пример
Код: Выделить весь код
[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
OutputDir=.
Compression=lzma/ultra
InternalCompressLevel=ultra
SolidCompression=yes

[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl

[Files]
Source: compiler:Libraries\get_hw_caps.dll; Flags: dontcopy

[Code]
function GetHardDriveFreeSpace(hdd: integer): Integer;
  external 'hwc_GetHardDriveFreeSpace@files:get_hw_caps.dll stdcall';
function GetHardDriveName(hdd: integer): PChar;
  external 'hwc_GetHardDriveName@files:get_hw_caps.dll stdcall';
function GetHardDriveTotalSpace(hdd: integer): Integer;
  external 'hwc_GetHardDriveTotalSpace@files:get_hw_caps.dll stdcall';
function GetHardDrivesCount(): Integer; external 'hwc_GetHardDrivesCount@files:get_hw_caps.dll stdcall';

function InitializeSetup(): Boolean;
var
  i, count: Integer;
  msg: string;
begin
  count:= GetHardDrivesCount();
  msg:= 'Количество дисков: ' + IntToStr(count) + #13;
  for i:= 0 to count - 1 do
    msg:= msg + 'Размер: ' + GetHardDriveName(i) + ' - ' +
      IntToStr(GetHardDriveTotalSpace(i)) + ' Мб' +
         ', своб.: ' + IntToStr(GetHardDriveFreeSpace(i)) + ' Мб' +#13;
  MsgBox(msg, mbInformation, MB_OK);
end;


Цитата YURSHAT:
Не знаете для чего он? »
Нет.

-------
Книги нужны, чтобы напоминать человеку, что его оригинальные мысли не так уж новы... Авраам Линкольн.

Это сообщение посчитали полезным следующие участники:

Отправлено: 01:41, 26-11-2009 | #504