100分求助,vb.net强制删除文件。
我在制作一个小工具时碰到文件正在使用的时候,就无法删除文件。
请高手指点一下,如何强制删除文件。
有时有些文件是因为确实有进程在使用,那么可以杀掉一些非系统进程来删除文件。
有时是因为内存的原因,无法删除。
有时是因为系统进程在使用该文件,那么如何重启后删除该文件
请给出代码指点一下,分不够可以再加。
[解决办法]
沙发,帮顶
先杀进程再删除文件
- VB.NET code
//杀进程代码 Private Sub KillProcess(ByVal processName As String) Dim myproc As System.Diagnostics.Process = New System.Diagnostics.Process Try For Each thisproc As Process In Process.GetProcessesByName(processName) If (Not thisproc.CloseMainWindow()) Then thisproc.Kill() End If Next Catch End Try End Sub
[解决办法]
在 Win32NT 类的操作系统 (Windows 2000、Windows XP、Windows 2003) 中,正在使用的文件可以通过 File.Move(InUseFileName, TempFileName); 改名成功,然后再 File.Delete(TempFileNam); 进行删除。
[解决办法]
试下API函数SHFileOperation可不可以
[解决办法]
如果核心态系统进程开机启动就调用该文件,那么就非常麻烦了,但我估计你的问题不是这样吧
如果不是,你可以在自己的程序中截获关机消息,把要删除的文件路径记录在一个文件中,重启时你的程序
需要自动运行,先检查记录文件中有没有待删文件,有则删除即可
[解决办法]
My.Computer.FileSystem.DeleteFile("C:\1.txt")
'对在用的文本文件可以删除,已测试
[解决办法]
Winstart.bat在系统加载win.com后执行.很多软件安装后对自身的清理就由它负责,重启时删除.
这玩意儿挺可恶的.
你可以网上找找相关的资料.
[解决办法]
http://topic.csdn.net/t/20060209/10/4546833.html
值得学习