研究制作USB分布式应用程序的可能性
将在插入 U 盘时自动启动并在移除 U 盘时自动关闭
将使用 .Net 和 C#。
正在寻找如何使用 C# 解决此问题的建议?
更新:将此作为服务实现的两种可能的解决方案。
- 覆盖 WndProc
或者
- 将 WMI 查询与 ManagementEventWatcher 结合使用
最佳答案
您可以使用 WMI,它很简单,而且比带有服务的 WndProc 解决方案要好得多。
这是一个简单的例子:
using System.Management;
ManagementEventWatcher watcher = new ManagementEventWatcher();
WqlEventQuery query = new WqlEventQuery("SELECT * FROM Win32_VolumeChangeEvent WHERE EventType = 2");
watcher.EventArrived += new EventArrivedEventHandler(watcher_EventArrived);
watcher.Query = query;
watcher.Start();
watcher.WaitForNextEvent();
关于c# - 使用windows服务和c#检测USB驱动器插入和移除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31186448/