Sources
Delphi Russian Knowledge Base
DRKB - база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Можно ли удалять из списка TDriveComboBox диски которые отключены?

01.01.2007

На некоторых laptop компьютерах может не быть флоппи дисковода. Можно ли удалять из списка TDriveComboBox диски которые отключены?

В примере TDriveComboBox не показывает дисководы, которые не готовы. (not ready). Учтите что на многих компьютерах будет ощутимая задержка при поверке plug&play флоппи дисковода.

procedure TForm1.FormCreate(Sender: TObject);
var
  i: integer;
  OldErrorMode: Word;
  OldDirectory: string;
begin
  OldErrorMode := SetErrorMode(SEM_NOOPENFILEERRORBOX);
  GetDir(0, OldDirectory);
  i := 0;
  while i <= DriveComboBox1.Items.Count - 1 do
    begin
{$I-}
      ChDir(DriveComboBox1.Items[i][1] + ':\');
{$I+}
      if IoResult <> 0 then
        DriveComboBox1.Items.Delete(i)
      else
        inc(i);
    end;
  ChDir(OldDirectory);
  SetErrorMode(OldErrorMode);
end;
Previous page:
Как узнать, находится ли дискета в дисководе?
Top:
DRKB
Next page:
Как заблокировать доступ к дисководу?