Вы не должны использовать цикл для опроса существования файла, для этого и нужен FileSystemWatcher
.Вам нужно будет сделать что-то вроде этого.
var watcher= new FileSystemWatcher(b);
watcher.Filter = "t.txt";
watcher.Created += (sender, eventArgs) => MessageBox.Show("File Exists");
Я сделал несколько предположений о том, что находится в вашей переменной b
, но дело в том, что наблюдатель будет следить за каталогом изменений, устанавливать фильтр для типов файлов, которые вы ищетеfor (он будет принимать подстановочные знаки).
Если вы хотите запретить выход из программы, не используйте бесконечный цикл, просто используйте Console.ReadKey
или Console.ReadLine
, чтобы не делать занятое ожидание.
Console.WriteLine("Press any key to exit.");
Console.ReadKey();