Ну, я уверен, что вы могли бы написать расширение для проводника, которое бы это делало, но более типичный метод, который я знаю, это написать службу Windows, которая отслеживает рассматриваемый каталог, используя класс FileSystemWatcher для мониторинга событий.
Служба может затем выполнить запрошенные действия (или создать исполняемый файл для этого).
Одно замечание, которое я заметил, заключается в том, что иногда наблюдатель файлов может пропустить события, если много активности происходит одновременно (по состоянию на .net 2.0 - не проверено 3.5).
Если вы используете этот метод, убедитесь, что вы проверяете содержимое каталога самостоятельно, когда получаете уведомление об изменении, а не полагаетесь на то, что сообщает вам Filewatcher. В итоге я объединил обработку событий filewatcher с редким опросом, чтобы убедиться, что ничего не пропустил.