使用c#可靠地将文件从一个服务器复制到另一个服务器

本文关键字:服务器 一个 复制 另一个 文件 使用 | 更新日期: 2023-09-27 18:14:44

我正在寻找一种编程方式将文件从一个网络驱动器复制到另一个。我已经创建了一个程序,做一个简单的复制,但这是不够的,因为行是不可靠的,文件最终被损坏。有没有一种技术可以同步文件夹并做求和检查或类似的事情?

我需要它是一个c#应用程序,因为我需要知道何时完成复制,以便我可以处理另一边的文件。我正在使用windows服务来协调这个

我只是想找个人给我指出正确的方向,如果有必要的话。

使用c#可靠地将文件从一个服务器复制到另一个服务器

你要找的是Robocopy(又名鲁棒复制),它是内置在windows Vista和更新的,它具有重试网络故障的功能。

一个缺点是没有内置的"验证"功能,但如果你需要,你可以使用第三方文件哈希程序,并将副本放在脚本中,在复制完成后验证哈希。

这是一个以可重启模式复制所有文件和子文件夹的查询,如果复制失败,默认情况下它将重新尝试1,000,000次,每次尝试之间等待30秒。(您可以更改/r:<N>/w:<N>,其中<N>是数字)

robocopy C:'SourceFolder ''DestComputer'DestFolder /zb /e

我唯一一次这样做是在分布式服务器的部署过程中。在这种情况下,我压缩文件,移动并使用PSEXEC解压缩它们。

如果我是你,我会先弄清楚如何压缩文件(以防止你所描述的损坏问题),然后再考虑如何移动它们。

相关文章: