C# File.Copy是否阻止其他应用程序写入该文件?

C# File.Copy是否阻止其他应用程序写入该文件?,c#,file,file-io,file-copying,C#,File,File Io,File Copying,我想复制一些由另一个应用程序编写的文本文件,但我不想做任何事情来阻止另一个应用程序。从写入这些文件 我正在使用File.Copy,它来自System.IO命名空间、C#、.Net Framework 2.0 我查看了MSDN的文档,但没有明确说明File.Copy使用的方法。它是非托管API调用的包装器吗 File.Copy是否以任何方式锁定或阻止正在复制的文件 提前感谢您提供有关此信息。如果其他应用程序通过指定FileShare创建其文件。无,您将收到UnauthorizedAccessExc

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

我正在使用
File.Copy
,它来自
System.IO命名空间
、C#、.Net Framework 2.0

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

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


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

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

你可以使用(或其他反编译工具)查看方法的内部结构


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

@Joey:我假设Matt指的是源文件,而不是目标文件。不过,在另一个进程写入文件时复制文件可能会导致奇怪的结果,这取决于文件的类型和复制的目的。谢谢大家的回复。Joey,是的,我指的是源文件,而不是复制到的目标文件。Schglurps,我已经过期了,我在另一个应用程序中打开了一个filestream,fileshare设置为None。我可以用file.copy复制文件。赛勒,谢谢。我不知道为什么我没有想到这一点。我将查看reflector中的方法,并阅读win32 api调用。