Delphirus - прграммирование на delphi
   Все о delphi Delphirus - прграммирование на delphi
blocks.gif
Навигация
 

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

 
 
 

Советы по delphi \ Система \ Компьютер \ Как корректно определить изменения в оборудовании Plug&Play

Как корректно определить изменения в оборудовании Plug&Play

type
  TForm1 = class(TForm)
    Button1: TButton;
  private
    { Private declarations }
    procedure WMDeviceChange(var message: TMessage); message WM_DEVICECHANGE;
  public
    { Public declarations }
end;

var
  Form1: TForm1;

implementation
{$R *.DFM}

const DBT_DEVICEARRIVAL = $8000;
const DBT_DEVICEQUERYREMOVE = $8001;
const DBT_DEVICEQUERYREMOVEFAILED = $8002;
const DBT_DEVICEREMOVEPENDING = $8003;
const DBT_DEVICEREMOVECOMPLETE = $8004;
const DBT_DEVICETYPESPECIFIC = $8005;
const DBT_CONFIGCHANGED = $0018;

procedure TForm1.WMDeviceChange(var message: TMessage);
var
  s : string;
begin
  {Do Something here}
  case message.wParam of
    DBT_DEVICEARRIVAL :
      s := 'A device has been inserted and is now available';
    DBT_DEVICEQUERYREMOVE:
    begin
      s := 'Permission to remove a device is requested';
      ShowMessage(s);
      {True grants premission}
      message.Result := integer(true);
      exit;
    end;
    DBT_DEVICEQUERYREMOVEFAILED :
      s := 'Request to remove a device has been canceled';
    DBT_DEVICEREMOVEPENDING :
      s := 'Device is about to be removed';
    DBT_DEVICEREMOVECOMPLETE :
      s := 'Device has been removed';
    DBT_DEVICETYPESPECIFIC :
      s := 'Device-specific event';
    DBT_CONFIGCHANGED :
      s:= 'Current configuration has changed'
    else
      s := 'Unknown Device Message';
  end;
  ShowMessage(s);
  inherited;
end;

Название: Как корректно определить изменения в оборудовании Plug&Play
Дата публикации: 2004-06-17 (2725 Прочтено)

 
 

 

Page generation 0.036 seconds