文件.移动和网络浏览器
本文关键字:浏览器 网络 移动 文件 | 更新日期: 2023-09-27 18:13:55
c# - TIA相对较新,请提供帮助。
用webBrowser构建窗口应用。使用browser.Navigate("myfilestring")
获取本地文件(PDF格式)。在查看文件之后,我希望有一个方法将文件从一个目录File.Move()
到另一个目录。我遇到的问题是,移动返回一个IO异常,说明文件操作不能执行,因为文件正在被另一个进程使用。
在调用Move之前,I browser.Navigate("someotherfilestring")
希望释放原始文件上的'file in use'锁…不帮助。
我还在Move周围放置了一个递归的try/catch,并在catch中放置了thread.sleep(50)
,进一步希望这只是一个时间问题……也没有帮助。
然而,如果我在catch中放入MessageBox.Show()
- IO异常捕获一次-显示消息框,然后点击OK按钮具有解除文件繁忙的效果,以允许File.Move()
操作继续进行。我不想让这个对话框弹出作为解决方案。
关于我如何以编程方式解除文件的繁忙以允许File.Move()
操作继续进行的任何提示?
再次感谢。
我建议你用这样一种方式来构建你的程序,你可以避免所有的问题:
- 导航到文件时,首先使用
File.Copy()
将文件复制到具有唯一文件名的临时位置。 - 导航到临时文件
- 当你去做
File.Move()
,一切都应该工作得很好,因为它现在是临时文件被锁定,而不是原来的文件。