我不知道我在做什么错在这里,但我试图删除一个二进制文件,当它没有运行时,但如果它正在运行,显示一个消息框告诉用户在删除它之前关闭该程序。当我试图这样做,它忽略了消息框,并尝试删除时,它的运行文件,显然你不能这样做,这样的Visual Studio所以它这个返回:确定一个可执行文件是否正在运行
System.UnauthorizedAccessException的:“访问路径'C:\ cmctemp \ lcpol \ lcweb.exe'被拒绝。'
不确定为什么它不显示消息框。
private void button5_Click(object sender, EventArgs e)
{
Process[] pname = Process.GetProcessesByName("lcweb.exe");
if (pname.Length == 0)
if (File.Exists(@"C:\cmctemp\lcpol\lcweb.exe"))
File.Delete(@"C:\cmctemp\lcpol\lcweb.exe");
else
MessageBox.Show("Please close the program before deleting!", "Information");
}
你可能想'过程。 GetProcessesByName(“lcweb”)' – DavidG
如果你的消息需求是由用户完成的,你应该首先通过ProcessInfo检查这个过程,如果你的消息需求是由用户完成的话 –
正如@DavidG所说,从进程中删除'.exe'名称 – Pikoh