Redistributing Sync Framework

Sync Framework components are redistributed by including one or more of the Sync Framework installation packages with your application deployment. Components are provided in separate packages so that installation can be tailored to application requirements. Redistributing Sync Framework by packaging the SDK or by installing individual DLLs is not supported.

Determining Which Packages To Install

Sync Framework provides three installation packages on the Microsoft Download Center. These install components into Program Files\Microsoft Sync Framework\2.1\Runtime. Depending on processor architecture, the final directory in the install path is either \x86 or \x64. Managed DLLs are also added to the global assembly cache (GAC). Installing a package on a computer with a processor architecture that differs from that of the installation package may result in slight variations on the install path. For example, installing the x86 package on an x64 machine installs to Program Files (x86).

Based on your application's functionality, determine which of the following packages are required. The package names listed are for the initial English version for x86 platforms; the names for other versions will differ.

  • Synchronization-v2.1-x86-ENU.msi (This package is a pre-requisite for the other packages and must be installed first.)

    DLLs Installed


    Microsoft.Synchronization.dll, Synchronization21.dll, FeedSync21.dll

    Managed and native API for the synchronization runtime, core components, and Web synchronization components. For more information, see Synchronizing Data Stores by Using Custom Providers and Synchronizing Web Feeds.

  • ProviderServices-v2.1-x86-ENU.msi

    DLLs Installed


    Microsoft.Synchronization.MetadataStorage.dll and MetaStore21.dll; and Msfdb.dll, Msfdbqp.dll, and Msfdbse.dll

    Managed and native API for the metadata storage service; and DLLs for the lightweight database that the service uses. For more information, see Sync Framework Metadata Storage Service.

    Microsoft.Synchronization.SimpleProviders.dll and SimpleProviders21.dll

    Managed and native API for simple custom providers. For more information, see Implementing a Simple Custom Provider.

    Microsoft.Synchronization.Files.dll and FileSyncProvider21.dll

    Managed and native API for the file synchronization provider. For more information, see Synchronizing Files.

  • DatabaseProviders-v3.1-x86-ENU.msi

    DLLs Installed


    Microsoft.Synchronization.Data.dll, Microsoft.Synchronization.Data.Server.dll, Microsoft.Synchronization.Data.SqlServer.dll, and Microsoft.Synchronization.Data.SqlServerCe.dll

    Managed API for database synchronization providers. For more information, see Synchronizing Databases.

For a complete list of the redistributable packages and components contained in all releases of Sync Framework, along with version and installation path information, see Installing Sync Framework.

Installing the Required Packages

After you determine which packages your application requires, these prerequisites should be installed on each user's computer as part of an application deployment. Each Sync Framework installation package detects whether the components in the package exist on the user's computer and installs those components if they do not exist. If Sync Framework components are subsequently uninstalled, they must be re-installed manually or by the application before the application can run properly.

In Visual Studio, you can deploy applications by using either ClickOnce deployment or Windows Installer deployment technology. For more information about application deployment and prerequisites in Visual Studio, see the following topics.



Choosing a Deployment Strategy

Describes how to deploy Windows-based applications from Visual Studio by using ClickOnce and Windows Installer.

Adding Custom Prerequisites

Describes how to specify prerequisites for application deployment in Visual Studio.

Prerequisites Dialog Box

Describes the options that are available in the Visual Studio Prerequisites dialog box.

See Also


Installation, Redistribution, and Version Compatibility