Delphi 中的自动检测 USB 插入和移除
AutoDetect USB Insert and Removal in Delphi
我需要检测 USB 设备何时从我的程序中移除或插入。
我做了一些研究 found this 但不知道如何 implement/use 它。
有人能帮我解决一个函数吗?return 在 USB 插入时为真,在移除时为假,这样我就可以调用计时器每秒检查一次该函数?
使用 Delphi 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;
我需要检测 USB 设备何时从我的程序中移除或插入。
我做了一些研究 found this 但不知道如何 implement/use 它。
有人能帮我解决一个函数吗?return 在 USB 插入时为真,在移除时为假,这样我就可以调用计时器每秒检查一次该函数?
使用 Delphi 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;