USBTools检测U盘拔出插入小程序

易语言 2020-08-14 16:20:40

USBTools检测U盘拔出插入小程序

.如果真 (uMsg = #WM_DEVICECHANGE)
.判断开始 (wParam = #DBT_DEVICEARRIVAL)
输出调试文本 (“U盘插入”)
DriveName = 取空白字节集 (256)
dwDiskCount = GetLogicalDriveStrings (256, DriveName)
DriveName = 取字节集左边 (DriveName, dwDiskCount)
Driver = 分割字节集 (DriveName, { 0 }, )
.计次循环首 (取数组成员数 (Driver), i)
.如果真 (GetDriveType (到文本 (Driver [i])) = #DRIVE_REMOVABLE)
GetDiskFreeSpaceExA (到文本 (Driver [i]), pszDrive, TtoalNumberOfClusters, NumberOfFreeClusters)
.如果真 (pszDrive ≠ 0)
列表框1.加入项目 (“盘符:” + 到文本 (Driver [i]) + “ 可用容量:” + 到文本 (四舍五入 (pszDrive ÷ 求次方 (1024, 3), 2)) + “GB 总容量:” + 到文本 (四舍五入 (TtoalNumberOfClusters ÷ 求次方 (1024, 3), 2)) + “GB”, )
.如果真结束

.如果真结束

.计次循环尾 ()
.判断 (wParam = #DBT_DEVICEREMOVECOMPLETE)
输出调试文本 (“U盘被卸载”)
.默认

.判断结束

.如果真结束
返回 (CallWindowProc (lpPrevWndFunc, hWnd, uMsg, wParam, lParam))