Search code examples
c#antivirususb-driveremovable-storage

Get notification when a new drive is connected via USB or other means (C#)


I need to detect when a new drive is plugged into a Windows system through a USB port, firewire port, etc. I am aware of the WM_DEVICECHANGE message, but this requires a window to be open in order to use it. Is there a way to create a background process in C# that detects when new drives are plugged in?

Background info: I am wanting to write this app to remove a worm from company removable drives. Regular antivirus software is failing to removing it. We have a script that will remove the worm, but it must be run manually, which is not good enough to contain the outbreak.


Solution

  • A windows service should do the trick

    Try reworking the CodeProject DriveDetector as a service and you should have what you need