3:49 PM
Marianz
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace SystemEyeWatcher
{
public partial class SystemWatcher : Form
{
enum Type
{
CREATED,
CHANGED,
RENAMED,
DELETED
}
string name = String.Empty;
public SystemWatcher()
{
InitializeComponent();
}
private void Watcher_Changed(object sender, System.IO.FileSystemEventArgs e)
{
name = Path.GetFileName(e.FullPath);
FillListWatch(listViewWatch, e.ChangeType.ToString(), e.FullPath, name, " ",
DateTime.Now.ToString(), Type.CHANGED);
}
private void Watcher_Created(object sender, System.IO.FileSystemEventArgs e)
{
name = Path.GetFileName(e.FullPath);
FillListWatch(listViewWatch, e.ChangeType.ToString(), e.FullPath, name, " ",
DateTime.Now.ToString(), Type.CREATED);
}
private void Watcher_Deleted(object sender, System.IO.FileSystemEventArgs e)
{
name = Path.GetFileName(e.FullPath);
FillListWatch(listViewWatch, e.ChangeType.ToString(), e.FullPath, name, " ",
DateTime.Now.ToString(), Type.DELETED);
}
private void Watcher_Renamed(object sender, System.IO.RenamedEventArgs e)
{
FillListWatch(listViewWatch, e.ChangeType.ToString(), e.OldFullPath,
e.OldName, e.Name, DateTime.Now.ToString(), Type.RENAMED);
}
private void watcherNew_Click(object sender, EventArgs e)
{
Cursor.Current = Cursors.WaitCursor;
SystemOptions sysOptions = new SystemOptions();
sysOptions.ShowDialog();
Cursor.Current = Cursors.Default;
}
private void watchStart_Click(object sender, EventArgs e)
{
lblStatus.Text = "Watching...";
Watcher.Path = <Your Path>
Watcher.Filter = <???>;
Watcher.IncludeSubdirectories = true;
Watcher.EnableRaisingEvents = true;
}
private void watchStop_Click(object sender, EventArgs e)
{
lblStatus.Text = "Ready...";
Watcher.EnableRaisingEvents = false;
}
private void FillListWatch(ListView listViewWatch,
string type,
string objects,
string objectname,
string newobject,
string details,
Type objectsType)
{
ListViewItem item = new ListViewItem(type);
item.SubItems.Add(objects);
item.SubItems.Add(objectname);
item.SubItems.Add(newobject);
item.SubItems.Add(details);
lblWatchType.Text = type;
lblObjectName.Text = objectname + " : " + newobject;
lblObjectPath.Text = objects;
switch (objectsType)
{
case Type.CREATED:
item.ImageIndex = 8;
item.BackColor = System.Drawing.Color.FromArgb(192, 192, 255);
break;
case Type.CHANGED:
item.ImageIndex = 9;
item.BackColor = System.Drawing.Color.FromArgb(255, 255, 192);
break;
case Type.RENAMED:
item.ImageIndex = 6;
item.BackColor = System.Drawing.Color.FromArgb(128, 255, 128);
break;
case Type.DELETED:
item.ImageIndex = 5;
item.BackColor = System.Drawing.Color.FromArgb(255, 192, 192);
break;
}
listViewWatch.Items.AddRange(new ListViewItem[] { item });
lblEntries.Text = "Watched Entries : " + listViewWatch.Items.Count;
}
private void SystemWatcher_FormClosing(object sender, FormClosingEventArgs e)
{
ExitingApplication();
Application.Exit();
}
}
}
0 comments :
Post a Comment