Карта сайтаСсылкиКонтакты

Определяем USB-устройства

PDF Печать
Статьи

Чтобы перехватывать действия с USB портом, нужно обработать сообщение Windows WM_DEVICECHANGE. Ниже приведена программа, которая следит за состоянием USB портов.


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

const
  DBT_DEVICEARRIVAL = $8000; // определение системой нового устройства
  DBT_DEVICEQUERYREMOVE = $8001;
  DBT_DEVICEQUERYREMOVEFAILED = $8002;
  DBT_DEVICEREMOVEPENDING = $8003;
  DBT_DEVICEREMOVECOMPLETE = $8004;
  DBT_DEVICETYPESPECIFIC = $8005;
  DBT_CONFIGCHANGED = $18;
var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WMDeviceChange(var Msg: TMessage);
var
  s : string;
begin
  { что-то делается }
  case Msg.wParam of
    DBT_DEVICEARRIVAL :
      ShowMessage('Устройство подключено');
  DBT_DEVICEQUERYREMOVE:
  begin
    s := 'Запрос на удаление устройства';
    ShowMessage(s);
    { true разрешить удаление }
    Msg.Result := integer(true);
    exit;
  end;
  DBT_DEVICEQUERYREMOVEFAILED :
    s := 'Запрос на удаление устройства был отменен';
  DBT_DEVICEREMOVEPENDING :
    s := 'Устройство может быть удалено';
  DBT_DEVICEREMOVECOMPLETE :
    ShowMessage('Устройство извлечено');
  DBT_DEVICETYPESPECIFIC :
    s := 'События конкретных устройств';
  DBT_CONFIGCHANGED :
    s:= 'Текущая конфигурация изменена'
  else
    s := 'Неизвестное сообщение устройства';
  end;
  if s <> '' then ShowMessage(s);
  inherited;
end;

 

Комментарии   

 
-1 #1 тусЬка 05.04.2014 12:43
Скажите пожалуйста, можно ли разработать программу ограничивающую использование USB-устройств, до момента ввода имени пользователя и пароля для разрешения на данное использование; иными словами – «блокировка» usb контроллера???

если возможно, скиньте листинг :-)
Цитировать
 
 
0 #2 lianestorts.soup.io 16.05.2017 01:38
I drop a leave a response each time I appreciate a post on a website or I have something to
add to the discussion. It is caused by the passion communicated in the article I looked at.
And on this post Определяем USB-устройства.
I was actually moved enough to drop a thought :) I actually do have a few questions for you if it's allright.
Is it simply me or do a few of the comments look like they are left by brain dead visitors?
:-P And, if you are posting on additional sites, I'd like to keep up
with everything new you have to post. Could you make a list every one of your community sites like your Facebook page, twitter feed,
or linkedin profile?
Цитировать
 

Добавить комментарий


Защитный код
Обновить