.NET 4.x Вылет программы при отслеживании директории - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени всему сообществу, вот есть такой код
/*
 * Created by SharpDevelop.
 * User: GadjievAlex
 * Date: 13.10.2013
 * Time: 19:50
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
 
namespace DirectoryWatcher
{
    /// <summary>
    /// Description of MainForm.
    /// </summary>
    public partial class MainForm : Form
    {
        FileSystemWatcher watcher=new FileSystemWatcher();
        
        public MainForm()
        {
            //
            // The InitializeComponent() call is required for Windows Forms designer support.
            //
            InitializeComponent();
            
            //
            // TODO: Add constructor code after the InitializeComponent() call.
            //
            try
            {
                watcher.Path=@"G:\MyWatchingFolder";
            }
            catch(ArgumentException ex)
            {
                textBox1.Text+=ex;
            }
            watcher.NotifyFilter=NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.FileName | NotifyFilters.DirectoryName;
            
            watcher.Filter="*.txt";
            
            watcher.Changed+=new FileSystemEventHandler(OnChanged);
            watcher.Changed+=new FileSystemEventHandler(OnChanged);
            watcher.Changed+=new FileSystemEventHandler(OnChanged);
            watcher.Renamed+=new RenamedEventHandler(OnRenamed);
            
            watcher.EnableRaisingEvents=true;
        }
        void OnChanged(object source, FileSystemEventArgs e)
        {
            textBox1.Text+=e.FullPath+" "+e.ChangeType;
        }
        void OnRenamed(object source, RenamedEventArgs e)
        {
            textBox1.Text+=e.OldFullPath+" "+e.FullPath;
        }
    }
}
поле текстовое... должно отслеживать состояние текстовых файлов в папке - при их (файлов) изменении должно выводиться сообщение в текстовое поле это самое..., так вот почему то при изменении файла в этой директории - программа просто закрывается... Буду очень признателен если кто то подскажет в какую сторону хоть копать...

Решение задачи: «.NET 4.x Вылет программы при отслеживании директории»

textual
Листинг программы
 void OnChanged(object source, FileSystemEventArgs e)
        {
            this.Invoke(new Action(() => { textBox1.Text += e.FullPath + " " + e.ChangeType; }));
        }
        void OnRenamed(object source, RenamedEventArgs e)
        {
            this.Invoke(new Action(() => { textBox1.Text += e.OldFullPath + " " + e.FullPath; }));
           
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы