IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Формирование протоколов, задание к курсовой
сообщение
Сообщение #1


Ветеран Броуновского Движения
***

Группа: Пользователи
Сообщений: 281
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +



В задание к курсовой попалось два вопроса:
1. Формирование протокола использования процессора (дата, время начала и окончания прикладного процесса).
2. Протоколирование моментов изменений в файловой системе и самих изменений в заданном каталоге.
Как это понимать и сделать?
Еще одно задание я выполнил только на половину: Вывод текущего объема свободной и занятой дисковой памяти на каждом логическом устройстве (диаграмма) и сведений о возможностях файловой системы на каждом устройстве. Сведения я получил, а вот как определить свободное и занятое место и вывести результат в виде диаграммы?


--------------------
Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Помощник капитана
****

Группа: Пользователи
Сообщений: 601
Пол: Мужской
Реальное имя: Артем

Репутация: -  2  +


а ты прикрепи то что делал и посмотрим! yes2.gif


--------------------
Dum spiro spero!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Ветеран Броуновского Движения
***

Группа: Пользователи
Сообщений: 281
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


Да, вот высведений о возможностях файловой системы на каждом устройстве:
Код
//получение свободного места на HD
procedure TForm1.UpdateDisk;
var
lpRootPathName           : PChar;
lpVolumeNameBuffer       : PChar;
nVolumeNameSize          : DWORD;
lpVolumeSerialNumber     : DWORD;
lpMaximumComponentLength : DWORD;
lpFileSystemFlags        : DWORD;
lpFileSystemNameBuffer   : PChar;
nFileSystemNameSize      : DWORD;

FSectorsPerCluster: DWORD;
FBytesPerSector   : DWORD;
FFreeClusters     : DWORD;
FTotalClusters    : DWORD;
begin
lpVolumeNameBuffer      := '';
lpVolumeSerialNumber    := 0;
lpMaximumComponentLength:= 0;
lpFileSystemFlags       := 0;
lpFileSystemNameBuffer  := '';

try
  GetMem(lpVolumeNameBuffer, MAX_PATH + 1);
  GetMem(lpFileSystemNameBuffer, MAX_PATH + 1);
  nVolumeNameSize := MAX_PATH + 1;
  nFileSystemNameSize := MAX_PATH + 1;

  lpRootPathName := PChar(DriveComboBox1.Drive+':\');
  if GetVolumeInformation( lpRootPathName, lpVolumeNameBuffer,
      nVolumeNameSize, @lpVolumeSerialNumber, lpMaximumComponentLength,
      lpFileSystemFlags, lpFileSystemNameBuffer, nFileSystemNameSize )
   then
     begin
      Volume_Name.Caption    := lpVolumeNameBuffer;
      Volume_Serial.Caption  := IntToHex(HIWord(lpVolumeSerialNumber), 4) + '-' + IntToHex(LOWord(lpVolumeSerialNumber), 4);
      File_System_Name.Caption:= lpFileSystemNameBuffer;
      GetDiskFreeSpace( PChar(DriveComboBox1.Drive+':\'), FSectorsPerCluster, FBytesPerSector,  FFreeClusters, FTotalClusters);
     end;
finally
  FreeMem(lpVolumeNameBuffer);
  FreeMem(lpFileSystemNameBuffer);
  end;
Sectors_PerCluster.Caption:=IntToStr(FSectorsPerCluster);
Bytes_PerSector.Caption:=IntToStr(FBytesPerSector);
end;



procedure TForm1.DriveComboBox1Change(Sender: TObject);
begin
UpdateDisk;
end;



--------------------
Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 23.01.2021 16:23
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name