Documentation and support

You will find below the Echosync documentation, in the form of frequently asked questions.

Need some help? Before requesting technical support, please make sure that the answer to your question is not already on this page. If you wish to report a bug, please follow the recommendations in this article: How to report a bug efficiently?

Technical support is provided free of charge, by the author of Echosync, on his free time. If you appreciate the service you receive, consider participating in the Echosync money pool which is a good way to show your appreciation for the time spent by the author of Echosync to help you out.

Contact technical support


Table of Contents

Start with Echosync

What are the limits and constraints of Echosync?

Echosync has the following limits and constraints:

  • Echosync requires administrator rights to synchronize files locked by another process (VSS). Some features can be disabled if Echosync is started without administrator rights.
  • Echosync is a synchronization software oriented "folders" and not "files" or "library". The level of granularity being the directory (the root of a volume included), it is not possible to exclude from synchronization some files contained in a source folder.
  • Echosync does not keep several versions of the same file. It is therefore not possible to "go back in time" by retrieving a version prior to the last synchronization. It is however possible to create several profiles saving the same source folder and to synchronize them alternately.

In which languages is Echosync available?

Echosync is available in English, French, Italian, Spanish, German, Chinese and Russian. By default, Echosync starts in the language of Windows if it is available, and in English if not. The language used can be changed at will in the software options, accessible by right-clicking in the main window.

Adding an additional language in Echosync is very easy and does not require recompiling the software. Translation candidates are invited to contact the technical support. Thanks to its volunteer users, Echosync is also available in Italian, Spanish, German, Chinese and Russian.

How to "install" and update Echosync?

Echosync is a portable software which means that it can be used without prior installation. Just unzip the Echosync archive to the location of your choice (like a USB key), avoiding choosing a folder that requires administrator privileges to write to (like the Program Files folder).

Echosync comes with a PowerShell script for automatic updates. During the update, the old folder is renamed. You can safely delete it after making sure that the new version is fully functional.

What are the software requirements?

Echosync is developed in C#/WPF and requires prior installation of the .NET Framework (in its version 4.7.2 or higher), compatible with Windows 7 or later.


Synchronization profiles

How to create a synchronization profile?

The user can create a new synchronization profile after filling in the fields in the Create a new synchronization profile window, which the user can open by clicking on the New... link in the top right corner of the software.

Window for creating a new synchronization profile

Echosync displays the list of loaded profiles, with for each of them, their name, source and destination directory, the date of their last synchronization, their status and a free description given by the user. The name and description of the profile can be modified at any time.

Where are the synchronization profiles stored?

The synchronization profiles are stored as an XML file with the name of the machine that created them with an XBP extension (XML Backup Profiles), in the Profiles subdirectory of the application.

The synchronization profiles are associated with the name of the machine that created them. In other words, only the profiles corresponding to the machine running the software are displayed. As Echosync is a portable software, which can be run directly from the destination media itself, it was necessary to manage the case of profiles created on separate PCs.

How to delete the synchronization profiles?

Selected profiles (Ctrl+click for a non-contiguous multiple selection, and Shift+click for interval selection) can be deleted by clicking on the Delete link.

Deleting a synchronization profile does not delete any files.

How to exclude some subfolders of the source folder from synchronization?

It is possible to exclude some subfolders contained in the source folder from synchronization. To do so, it is necessary to edit the XML file in which the profiles are saved. You can then add each subfolder to be ignored during synchronization by adding it to the XML tag SourceFoldersExclusion of the corresponding profile, as follows:

<SourceFoldersExclusion>
    <string>C:\Source\Absolute path to a sub-directory of the source to be ignored</string>.
    <string>Subfolder\Relative path to a directory to be ignored</string>
</SourceFoldersExclusion>

How to make partial synchronization?

Echosync acts only on the files and directories of the destination folder. It never modifies the files and directories of the source folder which can be read-only. Depending on the desired synchronization mode, four distinct options can be selected individually or in combination.

  • Synchronize moved or renamed items: renames or moves to the destination folder the files and directories renamed or moved in the source folder.
  • Synchronize deleted items: Deletes files and directories in the destination folder that have been deleted in the source folder.
  • Synchronize the modified items, more recent in the source folder: overwrites in the destination folder the files modified in the source folder, if they are more recent than those already present in the destination folder.
  • Synchronize the modified items, older in the source: overwrites in the destination folder the files modified in the source folder, even if they are older than those already present in the destination folder.
  • Synchronize new items: copies to the destination folder the new files and directories in the source folder.


Folder comparison and synchronization

What kind of difference does Echosync detect?

Echosync proceeds by comparison, by detecting the differences relative to the differences in the data:

  • Deleted elements corresponding to files and directories not found in the source but still present in the destination. These elements will be deleted in the destination. Be careful, this operation can lead to a loss of data.
  • Modified elements, more recent in the source, corresponding to the files present in the source and in the destination but whose modification date of the files present in the source is more recent than that of the files in the destination. These files will be overwritten in the destination.
  • Modified elements, older in the source corresponding to the files present in the source and in the destination but whose modification date of the files present in the source is older than that of the files in the destination. These files will be overwritten in the destination. Be careful, this operation can lead to a loss of data.
  • Moving or renaming elements corresponding to identical files present in the source and in the destination but whose path differs because they have been renamed or moved in the source. These files will be moved and/or renamed in the destination. Also included in this section are files whose read only, hidden or system attribute has changed in the source. These file attributes will be synchronized in the destination. Folder attributes are not synchronized.
  • New elements corresponding to files and folders not found in the destination but present in the source. These new elements will be copied to the destination.

By default, Echosync ignores files with the system attribute. It is possible to include these files by setting the IgnoreSystemFiles parameter to false in the AdvancedSettings.json configuration file, located in the Profiles subdirectory of the application.

How to program the synchronizations?

Echosync does not have its own programmer. This would have implied to have a resident program in memory at all times to trigger the synchronizations. In addition to the memory consumption and the increase of the machine startup time, such a solution would have compromised the portable aspect of Echosync.

However, since the synchronizations can be started from the command line, it is relatively easy to automate the synchronizations with the Windows Task Scheduler. All you have to do is to give the names of the profiles as arguments to the Echosync executable, being specified that wildcards are correctly interpreted (e.g.: NAS* will launch the synchronization of all profiles starting with 'NAS'). If profile names contain spaces, it is advisable to surround them with quotation marks when they are passed as arguments to Echosync.

Example: Echosync.exe NAS* profile1 "profile 2"

It is possible to start Echosync in the so-called "silent" mode. This mode hides the splash screen and automatically reduces the program window in the taskbar. To do this, just pass the /silent argument on the command line.

It is also possible to define the Echosync behavior at the end of the synchronization operations.

How to compare two folders without starting a synchronization?

A Compare button is used to launch the comparison between the source and destination directories of the selected profiles.

The Pause and Cancel buttons, which appear to the left of the Compare button, respectively pause or stop the comparison operation.

The result of the comparison is immediately presented to the user by displaying a future view of the destination directory.

How to start and follow the data synchronization?

A click on the Synchronize button launches the synchronization of the selected profiles, carried out as soon as the comparison is performed.

The progress of the synchronization is displayed in the status of the profile, and if it is selected, in the Windows taskbar.

The Pause and Cancel buttons, which appear to the left of the Compare button, are used to pause or stop the synchronization operation respectively.

How to detect synchronization errors?

The Status column of the comparison report mentions, if necessary, the reason why the synchronization of an item could not be successfully completed.

Even after closing the software, it is possible to consult the synchronization log to check the correct progress of the operations previously performed by right-clicking on a profile and selecting the View synchronization log command. Be careful, if the size of the synchronization log exceeds 5 MB, Echosync will rename it by adding a timestamp in parenthesis and will create a new log file.

Can we launch the synchronization or the comparison of several profiles simultaneously?

If several profiles are selected when the Compare or Synchronize command is launched, the operations are performed sequentially. The status of the profiles mentions the delayed start of a comparison or synchronization operation.

A simultaneous start of operations can be forced by explicitly starting the desired operation for each profile. This is beneficial in terms of performance only in very rare circumstances. Indeed, there is no point in launching several synchronizations simultaneously if the maximum read/write rate of the storage medium used is reached or if the bandwidth of the connection used (USB 2 in particular) is saturated.

How to program the automatic shutdown of the PC or the closing of Echosync at the end of the synchronization operations?

Right-clicking in the main window opens a contextual menu giving access to the software options, including one that allows you to choose an action to be performed once the synchronization operations are completed: shut down the computer, put it in hibernation or close Echosync (unconditionally or only if no error occurred during synchronization).

Programming the PC shutdown at the end of operations

The automatic shutdown of the PC, the hibernation of the PC or the closing of Echosync can also be programmed from the start of the software by adding respectively the argument /shutdown, /hibernate, /exit or /exitonsuccess to the command line.