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

Определение подключения / отключения нового устройства

01.01.2007
Александр (Rouse_) Багель

Маленький коментарий:
При открытии сидирома срабатывает DBT_DEVICEREMOVECOMPLETE, при закрытии DBT_DEVICEARRIVAL.

При подключении сетевого диска также приходит DBT_DEVICEARRIVAL, а при отключении - DBT_DEVICEREMOVECOMPLETE.

При подключении или отключении флэшки срабатывает DBT_DEVNODES_CHANGED...

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, MMSystem;

type
  TForm1 = class(TForm)
  public
    procedure CD(var Msg: TMessage); message WM_DEVICECHANGE;
  end;

const
  DBT_DEVICEARRIVAL = $8000;
  DBT_DEVICEREMOVECOMPLETE = $8004;
  DBT_DEVNODES_CHANGED = $7;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TForm1 }

procedure TForm1.CD(var Msg: TMessage);
begin
  case Msg.WParam of
    DBT_DEVNODES_CHANGED: Caption := 'Flash change';
    DBT_DEVICEARRIVAL: Caption := 'CD close with new disk';
    DBT_DEVICEREMOVECOMPLETE: Caption := 'CD open';
    //DBT_DEVICEARRIVAL: Caption := 'New network disk maped';
    //DBT_DEVICEREMOVECOMPLETE: Caption := 'Network disk unmaped';
  else
    Caption := 'Unknown';
  end;
end;

end.
Previous page:
Библиотека для работы с Bluetooth
Top:
DRKB
Next page:
Как получить размер физической установленной памяти?