繁体   English   中英

寻找用于检测可移动驱动器(USB闪存)的C#代码

[英]Looking for C# code for detecting removable drive (usb flash)

我正在寻找一个C#代码片段给我一个通知,说明在Windows Vista(或win7)中将USB驱动器插入我的电脑的时间

Codeproject上有一个名为DriveDetector的类,听起来像是你想要的。

看看WM_DEVICECHANGE 插入驱动器时应发送此消息。

我知道这不是你要求的,但如果你想在任何时候检查可用的设备,还有另一种方法。 您可以在System.Management命名空间中使用WMI类,我已经使用了这种方法,它运行良好。

如果您查看此答案 ,它将显示如何枚举系统上的所有驱动器。 然后,您可以查看驱动器类型以确定它是否是USB记忆棒。

我编写了一个powershell模块,它使用System.Management.ManagementEventWatcher和WMI类Win32_VolumeChangedEvent来显示您可以在powershell中注册的新事件,包括设备删除,添加等。您应该能够从此博客文章中找出相关的管道我的:

http://www.nivot.org/nivot2/post/2008/08/16/AutoMountunmountNewPSDrivesForRemovableDrivesAndNetworkSharesInPowerShellV2.aspx

您应该能够使用我在上面脚本中使用的方法,在少于十行的C#中为新驱动器连接事件。

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM