同步引擎宿主组件 · 文件同步链路关键模块
FileSyncHost.dll 是 Windows 文件同步体系中运行于用户态的宿主型动态链接库,通常由同步中心(Sync Center)、脱机文件组件或企业级同步客户端随宿主进程加载。它自身并不直接完成文件搬运,而是充当同步提供程序与操作系统之间的调度中枢,把上层同步请求翻译为具体的文件操作、传输任务与状态变更。
加载并初始化同步提供程序(Sync Provider),创建同步会话对象,维护会话生命周期与句柄池,在同步启动阶段完成 COM 接口封送与线程模型绑定。
读写同步伙伴(Sync Partner)元数据,注册同步目录、文件类型过滤器与排除规则,确保同步范围与本地配置、组策略设定保持一致。
借助 USN Journal、ReadDirectoryChangesW 与文件快照,比对本地与远端副本的时间戳、大小及哈希值,生成待同步变更集,实现增量识别。
管理分块传输、断点续传、并发度与失败重试策略,把传输任务派发至后台工作线程,尽量避免阻塞前台交互进程。
依据版本向量与修改时间判定冲突,执行重命名保留副本、以新覆盖旧等策略,并将同步进度、错误码回写至本地状态数据库。
通过 RPC、命名管道与同步服务通信,暴露同步提供程序类接口方法,向事件日志与图形界面反馈执行结果。
| 手段 | 用途 |
|---|---|
| sfc /scannow | 校验并修复受保护的系统组件文件 |
| DISM /Online /Cleanup-Image /RestoreHealth | 修复组件存储映像,恢复缺失的同步模块 |
| 数字签名与版本比对 | 识别是否被同名文件替换或劫持 |
| 重建同步关系 | 在同步中心删除并重新创建同步伙伴与配对 |