Re: FileSystemWatcher onCreated tell where it was created from?



Hello Brandon,

There are no functions to do that. What do u need is to monitor harddrivers for changes,
and for each change, for example if file was created, u need to look at log of changes of others drivers to determine where file was to understand either it was newly created or copied.

B> What yours does is tells me when a file was created, changed,
B> deleted, or renamed - which is simple and something I've already
B> done.
B> B> What I want is for when a file is CREATED, to be able to know where
B> it was created FROM (ie: if a file is copied, what was the source
B> directory, if it was saved from an application, a 'null' value is
B> acceptable) this the FileSystemWatcher does not do (straightforwardly
B> anyway).
B> B> "Michael Nemtsev" wrote:
B>
Hello Brandon,

sure, it's just a sample. Change in to meet your needs

B> Your example does not cover the scenario I outlined.
B>
B> "Michael Nemtsev" wrote:
B>
Hello Brandon,

The FileSystemWatcherClass is responsible for this

see sample below (MSDN).
The component is set to watch for changes in LastWrite and
LastAccess
time,
the creation, deletion, or renaming of text files in the directory.
If a
file is changed, created, or deleted, the path to the file prints
to
the
console. When a file is renamed, the old and new paths print to the
console.
public class Watcher
{
public static void Main()
{
Run();
}
[PermissionSet(SecurityAction.Demand, Name="FullTrust")]
public static void Run()
{
string[] args = System.Environment.GetCommandLineArgs();
// If a directory is not specified, exit program.
if(args.Length != 2)
{
// Display the proper way to call the program.
Console.WriteLine("Usage: Watcher.exe (directory)");
return;
}
// Create a new FileSystemWatcher and set its properties.
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = args[1];
/* Watch for changes in LastAccess and LastWrite times, and
the renaming of files or directories. */
watcher.NotifyFilter = NotifyFilters.LastAccess |
NotifyFilters.LastWrite
| NotifyFilters.FileName | NotifyFilters.DirectoryName;
// Only watch text files.
watcher.Filter = "*.txt";
// Add event handlers.
watcher.Changed += new FileSystemEventHandler(OnChanged);
watcher.Created += new FileSystemEventHandler(OnChanged);
watcher.Deleted += new FileSystemEventHandler(OnChanged);
watcher.Renamed += new RenamedEventHandler(OnRenamed);
// Begin watching.
watcher.EnableRaisingEvents = true;
// Wait for the user to quit the program.
Console.WriteLine("Press \'q\' to quit the sample.");
while(Console.Read()!='q');
}
// Define the event handlers.
private static void OnChanged(object source, FileSystemEventArgs e)
{
// Specify what is done when a file is changed, created, or
deleted.
Console.WriteLine("File: " + e.FullPath + " " + e.ChangeType);
}
private static void OnRenamed(object source, RenamedEventArgs e)
{
// Specify what is done when a file is renamed.
Console.WriteLine("File: {0} renamed to {1}", e.OldFullPath,
e.FullPath);
}
}
B> I'm trying to get a piece of software that will monitor a
location
on
B> a
B> drive, and if something appears on the location, report what was
B> created and,
B> if applicable where it was copied from.
B> For instance, monitor my D:\
B> I copy a file from C:\ to D:\
B> I get "<filename> created on D:\ from C:\<filename>"
B> While I realize this may not be directly possible w/ .NET, if
it's
B> not, does somebody know where I could look in the WinAPI to find
this
B> out?
B>
B> Thanks
B>
---
WBR,
Michael Nemtsev :: blog: http://spaces.msn.com/laflour
"At times one remains faithful to a cause only because its
opponents
do not cease to be insipid." (c) Friedrich Nietzsche
---
WBR,
Michael Nemtsev :: blog: http://spaces.msn.com/laflour
"At times one remains faithful to a cause only because its opponents
do not cease to be insipid." (c) Friedrich Nietzsche

---
WBR,
Michael Nemtsev :: blog: http://spaces.msn.com/laflour

"At times one remains faithful to a cause only because its opponents do not cease to be insipid." (c) Friedrich Nietzsche


.



Relevant Pages

  • Re: FileSystemWatcher onCreated tell where it was created from?
    ... Creating an FSW on all the drives will also not help me - when a file is ... B> acceptable) this the FileSystemWatcher does not do (straightforwardly ... public static void Main ... RenamedEventArgs e) ...
    (microsoft.public.dotnet.framework)
  • Re: FileSystemWatcher onCreated tell where it was created from?
    ... public static void Main ... // Create a new FileSystemWatcher and set its properties. ... // Specify what is done when a file is changed, created, or deleted. ... RenamedEventArgs e) ...
    (microsoft.public.dotnet.framework)
  • Re: FileSystemWatcher onCreated tell where it was created from?
    ... FileSystemWatcher does not do. ... public static void Main ... // Specify what is done when a file is changed, created, or deleted. ... RenamedEventArgs e) ...
    (microsoft.public.dotnet.framework)
  • RE: File System Monitor Question
    ... to create another FileSystemWatcher for the other directory. ... >Subject: File System Monitor Question ... >public class DirectoryMonitorConsole ... >private static void OnChanged ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: ASP.NET Application and FileSystemWatcher
    ... I forgot to say that directory which I monitor is a shared folder on the ... > anywhere but between a client http request and the server response. ... >> easy).I initialize my class which is using a FileSystemWatcher in my ...
    (microsoft.public.dotnet.framework.aspnet)

Loading