Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 662

•  TDictionary Custom Sort  6 668

•  Fast Watermark Sources  6 449

•  3D Designer  9 382

•  Sik Screen Capture  6 783

•  Patch Maker  7 191

•  Айболит (remote control)  7 180

•  ListBox Drag & Drop  6 029

•  Доска для игры Реверси  97 652

•  Графические эффекты  7 354

•  Рисование по маске  6 655

•  Перетаскивание изображений  5 512

•  Canvas Drawing  5 895

•  Рисование Луны  5 637

•  Поворот изображения  5 124

•  Рисование стержней  3 717

•  Paint on Shape  2 928

•  Генератор кроссвордов  3 832

•  Головоломка Paletto  3 069

•  Теорема Монжа об окружностях  3 881

•  Пазл Numbrix  2 553

•  Заборы и коммивояжеры  3 293

•  Игра HIP  2 258

•  Игра Go (Го)  2 181

•  Симулятор лифта  2 574

•  Программа укладки плитки  2 188

•  Генератор лабиринта  2 691

•  Проверка числового ввода  2 339

•  HEX View  2 675

•  Физический маятник  2 325

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Проверить, вставлен ли диск



Сын звонит отцу на работу:
- Папа, что значит "HDD format completed".
- А это, сынок значит, что к вечеру ты - труп!!!


function DiskInDrive(Drive: Char): Boolean; 
  // Disk can be a floppy, CD-ROM,... 
var 
  ErrorMode: Word; 
begin 
  { make it upper case } 
  if Drive in ['a'..'z'] then Dec(Drive, $20); 
  { make sure it's a letter } 
  if not (Drive in ['A'..'Z']) then 
    raise EConvertError.Create('Not a valid drive ID'); 
  { turn off critical errors } 
  ErrorMode := SetErrorMode(SEM_FailCriticalErrors); 
  try 
    { drive 1 = a, 2 = b, 3 = c, etc. } 
    if DiskSize(Ord(Drive) - $40) = -1 then 
      Result := False 
    else 
      Result := True; 
  finally 
    { Restore old error mode } 
    SetErrorMode(ErrorMode); 
  end; 
end; 

procedure TForm1.Button1Click(Sender: TObject); 
begin 
  if DiskInDrive('a') = False then 
    ShowMessage('Drive not ready'); 
end;