VB.net 删除正在运行的自身exe文件
可以用于更新最要文件代码,例如更新文件本身需要更新,那么就可以用以下代码实现,但需要注意的是,360可能报BD,悲哀吧!
VB.net
Public Sub TestForKillMyself()
Dim bat As String = "@echo off" & vbCrLf & _
": tryagain " & vbCrLf & _
"del %1" & vbCrLf & _
"if exist %1 goto tryagain" & vbCrLf & _
"ren AA.exe BB.exe" & vbCrLf & _
" del %0"
System.IO.File.WriteAllText("killme.bat", bat) '写bat文件
Dim psi As New ProcessStartInfo '= new ProcessStartInfo();
psi.FileName = "killme.bat" ';
psi.Arguments = """" & Environment.GetCommandLineArgs()(0) & """"
psi.WindowStyle = ProcessWindowStyle.Hidden ';
Process.Start(psi)
End Sub
C#
public void TestForKillMyself()
{
string bat = "@echo off" + Environment.NewLine + ": tryagain " + Environment.NewLine + "del %1" + Environment.NewLine + "if exist %1 goto tryagain" + Environment.NewLine + "ren AA.exe BB.exe" + Environment.NewLine + " del %0";
System.IO.File.WriteAllText("killme.bat", bat); // 写bat文件
ProcessStartInfo psi = new ProcessStartInfo(); // = new ProcessStartInfo();
psi.FileName = "killme.bat"; // ;
psi.Arguments = "\"" + Assembly.GetExecutingAssembly().Location + "\"";
psi.WindowStyle = ProcessWindowStyle.Hidden; // ;
Process.Start(psi);
}