美文网首页
解决.NET编程复制被占用的文件共享冲突的方法

解决.NET编程复制被占用的文件共享冲突的方法

作者: 达哥傻乐 | 来源:发表于2019-10-15 14:19 被阅读0次

    在编程用下列代码试图复制被别的程序打开的文件的时候,可能会出现如下错误:
    -2147024864: 文件“d:\Temp\S\新建 Microsoft Excel 工作表 - 副本.xlsx”正由另一进程使用,因此该进程无法访问此文件。

    //使用流的方式打开文件
    FileStream srcStream= new FileStream(srcFile, FileMode.Open, FileAccess.Read);
    

    解决方案好简单:使用FileStream构造函数的另一个重载,加上进程间共享文件的方式为FileShare.ReadWrite,如下所示:

    //使用流的方式打开文件
    FileStream srcStream= new FileStream(srcFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
    

    上面以C#代码为例演示,其实其它.NET代码是一样的道理,适当修改即可。

    达叔傻乐(darwin.zuo@163.com)

    相关文章

      网友评论

          本文标题:解决.NET编程复制被占用的文件共享冲突的方法

          本文链接:https://www.haomeiwen.com/subject/ftlsmctx.html