I just enter the town , it isn ' t in yet . <| sep |> Thank you . I should consider paying more time to reading historical and economical literature . <| sep |> True , but what are the advantages of such a system as opposed to having static roles ? <| sep |> It can be done in code . Setup a DirectoryWatcher object and create actions for FileCreate and FileModified events . This will allow you to check for banned files . private void setupWatchers try watchers new FileSystemWatcher for int i 0 i watchFolders . Length i Create 2 watchers for each folder watchers new F i l e SystemWatcherwatchFolders watchers . IncludeSubdirectories true watchers . NotifyFilter NotifyFilters . LastAccess NotifyFilters . LastWrite NotifyFilters . FileName NotifyFilters . DirectoryName NotifyFilters . Security NotifyFilters . CreationTime watchers . Created new F i l e S y s t e m E ventHandlerwatcherCreated watchers . Renamed new R e n a m e d E ventHandlerwatcherRenamed watchers . InternalBufferSize 8192 catch private void watcherCreatedobject sender , FileSystemEventArgs e Exception x new Exception while x ! null try int lastSlash e . Name . LastIndexOf '' string dir e . Name if dir . Contains dir e . Name . Substring 0 , lastSlash FileInfo f 1 new FileInfoe . FullPath if isBlockedExtensionf 1 . Extension FileToDelete f new FileToDeletedir , e . FullPath DeleteList . Addf x null catchException ex x ex throw new Exceptionx . Message