Microsoft Sync Framework同步文件

 1 public partial class Form1 : Form
 2     {
 3         private SyncOrchestrator sync = new SyncOrchestrator();
 4         private FileSyncProvider sourceProvider, targetProvider;
 5         private SyncDirectionOrder syncDirectionOrder = SyncDirectionOrder.Upload;
 6         private string sourcePath;
 7         private string targetPath;
 8         public Form1()
 9         {
10             InitializeComponent();
11             sync.StateChanged += (sender, args) =>
12             {
13                 this.labStatus.Text = sync.State.ToString();
14             };
15         }
16
17         private void button1_Click(object sender, EventArgs e)
18         {
19             this.btnStartOrEnd.Text = this.btnStartOrEnd.Text == "开启" ? "关闭" : "开启";
20             sourcePath = this.txtSource.Text.Trim();
21             targetPath = this.txtTarget.Text.Trim();
22
23             if (this.rbtnDownload.Checked)
24             {
25                 syncDirectionOrder = SyncDirectionOrder.Download;
26             }
27             if (this.rbtnUpload.Checked)
28             {
29                 syncDirectionOrder = SyncDirectionOrder.Upload;
30             }
31             if (this.rbtnDownloadAndUpload.Checked)
32             {
33                 syncDirectionOrder = SyncDirectionOrder.DownloadAndUpload;
34             }
35             if (this.rbtnUploadAndDownload.Checked)
36             {
37                 syncDirectionOrder = SyncDirectionOrder.UploadAndDownload;
38             }
39             if (this.btnStartOrEnd.Text == "关闭")
40             {
41                 var thread = new Thread(Start) { IsBackground = true };
42                 thread.Start();
43             }
44             else
45             {
46                 sync.Cancel();
47             }
48
49         }
50
51         private void Start()
52         {
53             while (true)
54             {
55                 sourceProvider = new FileSyncProvider(Guid.NewGuid(), sourcePath);
56                 targetProvider = new FileSyncProvider(Guid.NewGuid(), targetPath);
57                 sync = new SyncOrchestrator
58                 {
59                     LocalProvider = sourceProvider,
60                     RemoteProvider = targetProvider,
61                     Direction = syncDirectionOrder
62                 };
63                 sync.Synchronize();
64                 Thread.Sleep(100);
65             }
66         }
67     }

PS:要先装Microsoft Sync Framework SDK

时间: 2024-08-17 12:41:06

Microsoft Sync Framework同步文件的相关文章

Introducing Microsoft Sync Framework: Sync Services for File Systems

https://msdn.microsoft.com/en-us/sync/bb887623 Introduction to Microsoft Sync Framework File Synchronization Provider Introduction Microsoft Sync Framework is a comprehensive综合 synchronization同步 platform that enables collaboration合作 and offline scena

Microsoft Sync Framework 2.1 可再发行程序包 Microsoft Sync Framework 1.0 SP1 - 中文(简体)

Sync Framework 2.1 引入了新功能,这些功能支持您计算机上的 SQL Server 或 SQL Server Compact 数据库与 SQL Azure 数据库进行同步.此发行版还引入了基于参数的筛选.从数据库删除同步作用域和模板的功能,并且增强了性能可加快和简化同步过程. SQL Azure 同步 使用 Sync Framework 2.1,您可以通过综合利用 Windows Azure 平台和 SQL Azure 数据库将您的数据范围扩展到 Web.通过将您企业内部部署的

Microsoft Sync Framework下的快速开发同步程序

Microsoft Sync Frameworks简称MSF,是一个综合的同步平台,MSF支持应用程序,服务,设备的在线以及离线同步.MSF主要有以下几个部件组成:     * Sync Services for ADO.NET: 同步ADO.NET的数据     * Sync Services for FeedSync: 同步 RSS 和 ATOM 种子     * Sync Services for File Systems: 同步文件和文件夹     * Sync Framework Co

CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Framework\.。。”--“拒绝访问

aspx 常见错误 CS0016: 未能写入输出文件“c:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files/.........dll”--“拒绝访问. ” win7中安装asp.net的问题 编译器错误信息: CS0016: 未能写入输出文件问题解决办法 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误信息: CS0016: 未能写入输

CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\....\App_Web_default.aspx.cdcab7d2.zii776dc.dll”--“拒绝访问。 ”

关于访问asp.net站点出现以下问题的解决办法: 问题: CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\web\4b49f661\23a749fc\App_Web_default.aspx.cdcab7d2.zii776dc.dll”--“拒绝访问. ” 解决办法: 设置c:windows\temp 目录访问权限 ,给temp相应的权限即可

Microsoft .NET Framework 4.5.2主文件、语言包、补丁文件(截至到2015年9月)自动安装批处理

Microsoft .NET Framework 4.5.2无法整合到WINDOWS操作系统的WIM镜像,只能在安装后封装打包,因此在这里再把前面的下载地址贴出来,同时加了自动安装的批处理,其实这个非常简单,明白人一看就懂. 这个自动批处理可以适合在MDT 2013 UPDATE 1的应用程序导入使用. Microsoft .NET Framework 4.5.2这个版本是EXE安装文件,安装后会有一串的补丁要打,这里把Microsoft .NET Framework 4.5.2离线版,中文语言

可用于在 Microsoft.NET Framework 4.0 中的 ASP.NET 浏览器定义文件的修补程序

http://support.microsoft.com/kb/2600088 此修补程序为 Internet Explorer 和 Mozilla Firefox 在浏览器定义文件引入了更新的定义.浏览器定义文件存储在以下文件夹之一中,具体取决于安装的 Microsoft.NET Framework 版本: 对于 32 位版本的.NET Framework 4.0 %WinDir%\Microsoft.NET\Framework\v4.0.30319\CONFIG\Browsers 对于 64

[Bug]CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temp

win7中安装asp.net的问题 编译器错误信息: CS0016: 未能写入输出文件问题解决办法 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误信息: CS0016: 未能写入输出文件“d:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\5177u\d087da43\c12930d8\9ze28k_8.dll”--“拒绝访问. ”

【转载】错误 CS0016: 未能写入输出文件“c:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files/.........dll”--“拒绝访问。 ”

win7中安装asp.net的问题 编译器错误信息: CS0016: 未能写入输出文件问题解决办法 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误信息: CS0016: 未能写入输出文件“d:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\5177u\d087da43\c12930d8\9ze28k_8.dll”--“拒绝访问. ”