在德尔福自动检测USB插入和移除



我需要检测何时从我的程序中删除或插入USB设备。我做了一些研究并发现了它,但不知道如何实现/使用它。有人可以帮助我解决一个在 USB 插入时返回 true 并在删除时返回 false 的函数,以便我可以调用计时器每秒检查该函数?
使用德尔福XE7。

谢谢。

创建 TComponentUSB 的实例。将两个事件处理程序分配给 OnUSBArrival 和 OnUSBRemove 事件。在事件处理程序中执行适当的代码。请注意,不需要使用 TTimer 进行轮询。
代码草图:

type
  TMyForm = class(TForm)
    FormCreate(Sender: TObject);
    ...
  private
    CUSB: ComponentUSB;
    procedure USBArrival(Sender: TObject);
    ...
  end;

procedure TMyForm.FormCreate(Sender: TObject);
begin
  CUSB := ComponentUSB.Create(Self);
  CUSB.OnUSBArrival = USBArrival;
end;
procedure TMyForm.USBArrival(Sender: TObject);
begin
  Caption := 'I''m here now!';
end;

最新更新