我正在尝试使用以下代码删除只读文件。
var fileInfo = new FileInfo(saveLocation);
fileInfo.IsReadOnly = false;
fileInfo.Delete();
当它到达第三行时,抛出以下异常
消息:进程无法访问文件'\\ filepath \ filename.pdf',因为它正由另一个进程使用。
注意:\\ filepath \ filename.pdf不是实际的文件路径,我只是用它来替换更长的路径
我已经检查了文件,在代码运行之前,它被设置为只读,并且在代码运行之后,它已不再存在。
我认为当文件以只读方式打开时,我认为它不被使用?我很确定微软办公文件是.xlsx文件,但也许不适用于PDF?
最终,我的目标是能够将此文件的更新版本推送到共享位置,即使某些用户在其计算机上打开了该文件,这也是我最初将其设置为只读的原因。
答案 0 :(得分:1)
消息:进程无法访问文件'\ filepath \ filename.pdf',因为它正由另一个进程使用。
这与只读文件不同。
您可以在代码中找到哪个进程正在锁定文件
https://stackoverflow.com/a/20623311/141172
您也可以从命令行中找到
<强>更新强>
根据您的评论,您似乎可能希望在处理文件期间对文件进行独占锁定