7

我想复制一些由另一个应用程序编写的文本文件,但我不想做任何事情来阻止另一个应用程序。从写入这些文件。

我正在使用File.Copy,来自System.IO namespaceC#,.Net Framework 2.0。

我查看了 MSDN 的文档,但没有具体说明File.Copy使用的方法。它是非托管 API 调用的包装器吗?

是否File.Copy以任何方式锁定或阻止正在复制的文件?

提前感谢您提供有关此的任何信息。

4

2 回答 2

2

如果其他应用程序通过指定 FileShare.None 创建其文件,您将收到 UnauthorizedAccessException。所以我想你只需要在你的应用程序中处理这个特定的异常。

于 2011-11-26T09:52:11.713 回答
1

您可以使用.Net Reflector(或其他反编译工具)查看方法的内部结构。

实际上你可以看到System.IO File.Copy使用Microsoft.Win32.Win32Native库来处理文件。Microsoft.Win32.Win32Native它是所有 Win32 本机操作的 CLR 包装器。

于 2011-11-26T11:19:00.437 回答