C# 备份其他进程正在使用的文件

C# 备份其他进程正在使用的文件,c#,.net,windows,volume-shadow-service,C#,.net,Windows,Volume Shadow Service,我的应用程序目前使用的第三方API有一个bug,迫使我用32位构建它。不幸的是,这与窗口的卷影复制冲突,因为显然必须以64位运行才能工作 是否有VSS的替代方案可用于安全备份其他进程当前正在使用的文件?根据您的要求,您可以执行以下简单操作: FileStream fStream = new FileStream(FileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); StreamReader FileReader = new

我的应用程序目前使用的第三方API有一个bug,迫使我用32位构建它。不幸的是,这与窗口的卷影复制冲突,因为显然必须以64位运行才能工作


是否有VSS的替代方案可用于安全备份其他进程当前正在使用的文件?

根据您的要求,您可以执行以下简单操作:

FileStream fStream = new FileStream(FileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
StreamReader FileReader = new StreamReader(fStream, Encoding.UTF8);
这将在某些情况下工作,因为它可以读取锁定的文件。但我强烈建议你先弄清楚自己的需求,然后在这里发布


也就是说,我们所说的2gb文件中的数据是在“随机”位置写入的吗?或者偶尔附加新数据的2mb日志文件?

根据您的要求,您可以执行以下简单操作:

FileStream fStream = new FileStream(FileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
StreamReader FileReader = new StreamReader(fStream, Encoding.UTF8);
这将在某些情况下工作,因为它可以读取锁定的文件。但我强烈建议你先弄清楚自己的需求,然后在这里发布


也就是说,我们所说的2gb文件中的数据是在“随机”位置写入的吗?或者偶尔附加新数据的2mb日志文件?

我需要备份的所有文件都非常小。它们中的大多数大小只有几个基拉字节,较大的是10-20MB。使用FileStream备份这些文件是否安全?这取决于数据写入文件的方式,并且您应该测试它是否有效。这完全取决于应用程序如何锁定对文件的访问。我需要备份的所有文件都非常小。它们中的大多数大小只有几个基拉字节,较大的是10-20MB。使用FileStream备份这些文件是否安全?这取决于数据写入文件的方式,并且您应该测试它是否有效。这完全取决于应用程序如何锁定对文件的访问,您可能需要考虑将应用程序拆分为单独的32位和64位进程。正确的设计不应该太混乱。你可能想考虑将你的应用程序分成单独的32位和64位进程。只要设计得当,就不会太乱。