Is private deployment of Microsoft Sync allowed? RRS feed

  • Question

  • The Microsoft Sync Framework redistributable indicates that private deployment is not allowed based on the EULA:

    "Redistributing Sync Framework by packaging the SDK or by installing individual
    DLLs is not supported. The End User License Agreement (EULA) for the
    redistributable package covers the terms under which developers may use the
    redistributable. For full details, please review the EULA included in each


    However, there is also a page describing how to do private deployment in Azure, which seems to conflict with the above statement:

    "Deploying Sync Framework Components to Windows Azure

    A Windows Azure hosted service application uses Sync Framework components as private assemblies."


    • Can I (legally) privately deploy Microsoft Sync 2.1 outside of Azure?
    Friday, March 2, 2012 8:09 PM

All replies

  • Anyone?
    Tuesday, March 27, 2012 6:15 PM
  • I'm not Microsoft but I can tell you how I interpret the EULA and the download page:

    When you deploy your application compiled against the Sync Framework, you deploy the redistributables to be installed as a prerequisite to your application. For instance, my code is compiled against the DLLs in the GAC which point to C:\Program Files\<Insert rest here>. As long as this is installed first, my app is fine.

    What this prohibits you from doing is using Copy on the DLLs in question, finding them in your bin\ folder, and just trying to deploy that in one go. This is standard MS practice for redistributables across multiple products so I don't think SyncFx is any different here. No one should need the SDK on client machines but you're still welcome to install it you would just need to use the MSIs they provide.

    Does that clear it up? Again I'm not MS but this is how I've interpreted their standard practice.

    Thursday, March 29, 2012 11:56 PM
  • XCOPY deployment is a commonly desired approach as it allows deployments to be self-contained and typically allows installation without administrative rights.  I wouldn't mind including the redistributable installer as a prerequisite, however, it registers a COM DLL and inserts entries in the GAC, both of which require administrative rights.

    SQL Compact is an example of a Microsoft component which supports private deployment (see here: http://msdn.microsoft.com/en-us/library/gg213826(v=sql.110).aspx)

    The Windows Azure link above is similarly written for private Sync deployment in Azure, but the redistributable link itself seems to be contradictory.

    Friday, March 30, 2012 12:01 AM
  • Frankly I'm surprised the Azure link is even there but it may be necessary to deploy to Azure servers (though awkard). It seems that it outlines a private deployment as you suggest and you can extrapolate how to use that for a normal deployment. I would think this means it's highly unsupported as the note suggests that any hotfix/updates will be out of sync with the main release.

    Sorry for not reading that earlier but I tend to go by prior knowledge of redists with MS. I'm also rather fortunate that I get to have admin rights on the machines I deploy code to so a private deployment would just be extra work for me. I think you answered your own question but I would say it's a very much YMMV and use at your own risk approach. Again I'm extremely surprised the Azure link spells out exactly what you need to do.

    Thursday, April 12, 2012 1:09 AM