解决方案
可以使用.NET FileStream类方法Lock和Unlock,而不是使用interop:
FileStream.Lock
http://msdn.microsoft.com/zh-CN/library/system.io.filestream.lock.aspx
FileStream.Unlock
http://msdn.microsoft.com/zh-CN/library/system.io.filestream.unlock.aspx
或者使用下面代码
public bool IsFileLocked(string filePath)
{
try
{
using (File.Open(filePath, FileMode.Open)){}
}
catch (IOException e)
{
var errorCode = Marshal.GetHRForException(e) & ((1 << 16) - 1);
return errorCode == 32 || errorCode == 33;
}
return false;
}
在.net中如何检查文件是否被锁定?
日期:2020-03-23 22:54:00 来源:oir作者:oir
