基于Windows服务文件夹同步实现.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Windows服务文件夹同步实现

基于Windows服务文件夹同步实现   摘 要:通过文件操作类实现在两个或多个文件夹之间自动复制备份,实现同步工作。使用OOP方式设计文件同步相关的类,将文件同步的核心功能实现在一个Windows服务中,通过Windows服务,使得同步工作长驻操作系统。   关键词:文件夹同步;类;Windows服务   DOI:10.11907/rjdk.143571   中图分类号:TP302   文献标识码:A 文章编号:1672-7800(2014)012-0049-03   作者简介:邹?B(1981-),女,江苏苏州人,硕士,苏州农业职业技术学院信息与电子工程系讲师,研究方向为.NET软件开发。   0 引言    要使两个文件夹同步,需要一个监控工具时刻监控这两个文件夹,比较两个文件夹的不同之处。当源或目标文件夹发生变化,比如添加或删除了某个文件后,同步工具可以实时同步,若手工实现文件夹同步,工作量较大且容易出错。   1 文件夹同步    为了让文件夹实时同步,需要一个工具不停地监控两个文件夹的异同,该工具实现了一个专门的Windows服务来实现文件夹的同步功能。因为实时同步功能要耗费系统资源,所以可以制定同步服务间隔时间,该工具要能让用户配置这个Windows服务,如添加同步项、设置同步时间等lt;supgt;[1]lt;/supgt;。   2 文件同步核心功能实现    由于文件同步服务可以放在Windows服务中,也可以运行在一个Windows Forms类型的控制台应用程序上lt;supgt;[2]lt;/supgt;,所以将同步核心功能实现为一个文件操作类库项目SynchroLib,以便多次重用,该类库项目中的主要类包括:①SyncItem类:表示一个文件同步项;②SyncItemCollection类:派生自泛型的Listlt;SyncItemgt;集合,表示同步项集合;③SyncSettings类:保存或加载同步项的设置;④FileInfoEx类:表示一个文件信息类;⑤FileInfoList类:派生自泛型的Listlt;FileInfoExgt;集合,表示文件集合。   2.1 文件夹同步项实现    SynchroLib项目中的同步项允许用户指定文件同步的来源或者目标文件,以及是否进行备份等相关的设置。SyncItem类实现了单个同步项的同步功能,SyncItemCollection提供了管理多个同步项的功能。当用户在设置窗口中添加了同步项后,这些同步项将保存为XML元素,SyncItem将从XML元素中解析出同步项的相关属性,然后开始同步操作lt;supgt;[3]lt;/supgt;。   2.2 文件夹同步项SyncItem类    集合中的每个项都是一个SyncItem对象,实现各自的同步功能。SyncItem类的属性定义了同步项所需要的各种属性,包含源和目标路径、是否备份、是否删除等。其中XElement属性比较特别,该属性会将同步项中的属性值作为一个XML元素返回,当设置一个XElement类型的对象时,会从XML元素中获取属性值,这是因为同步项最终要保存到XML中去,作为一个XML元素存在lt;supgt;[4]lt;/supgt;。   2.3 文件备份操作实现    在同步选项中,如果要求对目标文件进行备份,备份操作不只是简单地将目标文件拷贝到备份文件夹下。备份操作提供版本保留机制,将原来的老版本文件进行更名保存,以便用户从老版本中恢复lt;supgt;[5]lt;/supgt;。   3 文件同步Windows服务技术实现    Windows服务程序是由操作系统托管的,在后台长期运行的程序可以随操作系统的启动而启动。因为长驻操作系统,所以Windows服务程序通常较少与用户交互。需要长时间运行的程序,可以使用Windows操作系统的服务控制台来查看当前操作系统的Windows服务列表lt;supgt;[6]lt;/supgt;。   3.1 创建Windows服务项目    打开Visual Studio 2010,选择主菜单中的“文件”、“新建”、“项目”命令,在弹出的窗口中选择Windows服务项目,命名为SynchroService。单击“确定”按钮后,Visual Studio 2010产生了一个服务组件Service1.cs和Program.cs文件。有了服务组件后,还需要添加专用的安装组件。在解决方案资源管理器中双击Service1.cs文件,Visual Studio将切换到设计视图,右击设计视图面板,在弹出的菜单中选择“添加安装程序”选项,Visual Studio 2010将产生一个服务安装文件,在该文件的设计视

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档