Жаль, но похоже нужной мне программы не существует.
Тогда, вот workaround, который можно попробовать использовать (сам ещё до конца всё не настроил, но проверил, вроде бы работает):
- Ставим какое-нибудь приложение, умеющее запускать бэкап/синхронизацию при подключении флешки и реализованное в виде службы Windows, например Allway Sync.
- Ставим USB Safely Remove.
- Подключаем флешку, настраиваем бэкап.
- USB Safely Remove умеет выполнять команды после подотключения флешки, перед и после отключения. Прописываем команду перед отключением «net stop [имя службы синхронизации]» и команду «net start [имя службы синхронизации]» после отключения флешки.
Всё, теперь если сделать безопасное извлечение через USB Safely Remove, то служба будет остановлена, и если она занималась копированием, то будет прервано копирование. Таким образом будет удовлетворено моё 3-е требование. Если программа синхронизации не умеет различать флешки (см. требование 2), то это умеет USB Safely Remove, можно настроить запуск службы после подключения нужной флешки.