I have a collection of almost 30,000 pictures and videos. When I add new pictures to the collection, I had been running a script file to synchronize the collection across various machines.
for %%s in (\\calvinh6\e$ \\calvinh3\e$ \\calvinh4\e$) do (
robocopy /s /fp %2 %1 %%s\pictures\%1
Echo done 2
I’ve been playing a little with Mesh for a while now. Also known as Live Mesh (http://blogs.msdn.com/livemesh/ ), it allows you to synchronize folders across multiple machines (and devices coming soon) very easily. For example, you can keep your Favorites sync’d between computers.
For example, after the simple installation, I can right click on a folder “c:\Test” in Windows Explorer and choose “Add folder to your Live Mesh”. A dialog comes up which shows me all the machines that I’ve added to my Mesh, and allows me to choose which ones to synchronize. It also includes the Live Mesh Desktop in the list of machines which can optionally be synchronized. There is a 5 gig limit to the amount of space you use in the “cloud”, but not to the amount of data you synchronize between your devices.
On the sync’d device, a new folder “Test” will be added to the desktop. You can then move this folder where you like.
Another feature of Mesh is the ability to Remote Desktop into any other machine (even across firewalls). From my laptop, I can connect to my dual monitor main machine, and I can see the entire 2 screens squished onto my laptop screen. There are various sizing options to scale the screens.
Keep in mind this is a tech preview of Live Mesh, and things will probably change
I loaded the Zune Software ( my wife has a Zune, but I don’t yet), but I can still run the software to manage and play my music collection. I’m trying to play Beethoven Piano Sonatas on my piano, so I took my CDs and added them to my Zune collection. I just added my Zune folder to my Mesh, and after a while, the folder was synchronized on the machines I chose! Great way to eat up disk space.
Try this: add a folder to Mesh and run this code:
Start Visual Studio. File->New->Project->VB->WPF Application
Dbl-click the form and paste in this code:
Const cPath As String = "d:\CalvinH\Music\Zune"
Dim WithEvents watcher As New IO.FileSystemWatcher(cPath)
Private Sub Window1_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
watcher.EnableRaisingEvents = True
Sub FileChanged(ByVal sender As Object, ByVal e As IO.FileSystemEventArgs) Handles watcher.Changed
Debug.WriteLine(DateTime.Now.ToLongTimeString + " " + _
(New Diagnostics.StackTrace).GetFrames(0).GetMethod.Name + " " + _
e.ChangeType.ToString + " " + e.Name + " " + e.FullPath)
Sub FileCreated(ByVal sender As Object, ByVal e As IO.FileSystemEventArgs) Handles watcher.Created
Sub FileDeleted(ByVal sender As Object, ByVal e As IO.FileSystemEventArgs) Handles watcher.Deleted
Sub FileDisposed(ByVal sender As Object, ByVal e As IO.FileSystemEventArgs) Handles watcher.Disposed
Sub FileRenamed(ByVal sender As Object, ByVal e As IO.FileSystemEventArgs) Handles watcher.Renamed
Run the code, make a change to the folder from a different computer that syncs it, and you see output similar to this:
11:28:44 AM FileCreated Created ve-473A.tmp d:\CalvinH\Music\Zune\ve-473A.tmp
11:28:44 AM FileChanged Changed ve-473A.tmp d:\CalvinH\Music\Zune\ve-473A.tmp
11:28:44 AM FileCreated Created t.txt~RF247c46fd.TMP d:\CalvinH\Music\Zune\t.txt~RF247c46fd.TMP
11:28:44 AM FileDeleted Deleted t.txt d:\CalvinH\Music\Zune\t.txt
11:28:44 AM FileChanged Changed t.txt~RF247c46fd.TMP d:\CalvinH\Music\Zune\t.txt~RF247c46fd.TMP
11:28:44 AM FileRenamed Renamed t.txt d:\CalvinH\Music\Zune\t.txt
11:28:44 AM FileDeleted Deleted t.txt~RF247c46fd.TMP d:\CalvinH\Music\Zune\t.txt~RF247c46fd.TMP
It looks like Mesh puts a place holder file (the file could be huge, and take a long time to sync) in the folder first, then does some renaming and deleting to complete the sync.
Examine .Net Memory Leaks
Find the Executing function's name