我在网上找了很多资料,实现检测U盘插拔的方法基本上都是监测WM_DEVICECHANGE。这种方法不但臃肿,而且效率不高,很容易出错。于是我摸索出了一种新的方法,以下就是实现过程。
首先在窗体中添加一个DriveListBox,当然你可以将它设置为隐藏(invisible)。下面让我们来看一看它的属性。
接下来我们只需要设置一个Timer,每隔一段时间先使用Drive1.Refresh
刷新盘符列表,然后再用Drive1.ListCount
,就可以知道当前有多少设备,进而推算出U盘所在盘符。