C # FileSystemEventHander не будет запускаться из FileSystemWatcher - PullRequest
0 голосов
/ 30 апреля 2019

Я пробовал около 100 вариантов этого кода, используя MS и SO в качестве ссылок, и я не могу получить файл для запуска.На самом деле, это не совсем точно.Я получил его в первый раз, но только в первый раз.

Это простой FileSystemWatcher, я ищу создаваемые файлы (либо созданные напрямую с помощью другого процесса, либо файлы, которые были скопированы.

Вот мой код, что мне не хватает?

public Form_Status() {
        InitializeComponent();
        Show();

        this.lblStatusText.Text = "Creating Jobs";
        Watch(@"\\erpsql\p21shares\PurchasingSave");

    }

    private static void Watch(string path) {

        // Create a new FileSystemWatcher and set its properties.
        using (FileSystemWatcher watcher = new FileSystemWatcher()) {
            watcher.Path = path;

            // LastWrite Triggers
            watcher.NotifyFilter = NotifyFilters.LastWrite;

            // Only watch text files.
            watcher.Filter = "*.*";

            // Add event handlers.
            watcher.Changed += new FileSystemEventHandler(OnChanged);
            watcher.Created += new FileSystemEventHandler(OnChanged);

            // Begin watching.
            watcher.EnableRaisingEvents = true;
        }
    }

    private static void OnChanged(object source, FileSystemEventArgs e) {
        // Do Something
        MessageBox.Show("Created Job: {0}", e.Name);
        Console.WriteLine($"File: {e.FullPath} {e.ChangeType}");
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...