检测USB设备变化

#include <dbt.h>  
LRESULT CMFCApplication1Dlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
	// TODO: 在此添加专用代码和/或调用基类
	PDEV_BROADCAST_HDR lpdb = (PDEV_BROADCAST_HDR)lParam;
	PDEV_BROADCAST_VOLUME lpdbv = (PDEV_BROADCAST_VOLUME)lpdb;
	TCHAR szMsg[80];
	char driveName;

	switch (message)
	{
	case WM_DEVICECHANGE:
		switch (wParam)
		{
		case DBT_DEVICEARRIVAL:

			::MessageBox(0, _T("检测到USB设备"), _T("WM_DEVICECHANGE"), MB_OK);
			break;
		case DBT_DEVICEREMOVECOMPLETE:

			::MessageBox(0, _T("USB设备拔出"), TEXT("WM_DEVICECHANGE"), MB_OK);
			break;
		default:
			;
		}
		break;
	default:
		;
	}
	return CDialogEx::WindowProc(message, wParam, lParam);
}


猜你喜欢

转载自blog.51cto.com/9233403/2107936