通过ASP.NET可以对一些无用的进程进行远程杀死,下面的代码先列出正在活动的所有进程,然后进行杀死。需要注意的是:这个文件要放在具有Administrator访问权限的虚拟目录下。
<% @ Page Language = " c# " %>
< HTML >
< HEAD >
<% @ Import namespace = " System.Diagnostics " %>
< script language = " C# " runat = " Server " debug = " true " >
void Page_Load(Object Sender, EventArgs e) {
btnKill.Attributes.Add("onclick", "javascript: return confirm('你真的要杀死这个进程吗?');");
}
private void KillProcess( string processName) {
System.Diagnostics.Process myproc= new System.Diagnostics.Process();
//得到所有打开的进程
try{
foreach (Process thisproc in Process.GetProcessesByName(processName)) {
if(!thisproc.CloseMainWindow()){
thisproc.Kill();
}
}
}
catch(Exception Exc)
{
msg.Text+= "杀死" +procname.SelectedItem.Text + "失败!";
}
}
public void btnKill_Click( object sender, System.EventArgs e)
{
KillProcess(procname.SelectedItem.Text);
msg.Text= procname.SelectedItem.Text +" 已经被杀死。";
}
public void btnShow_Click( object sender, System.EventArgs e) {
ArrayList procList =new ArrayList();
string tempName="";
int begpos;
int endpos;
foreach (Process thisProc in System.Diagnostics.Process.GetProcesses()) {
tempName=thisProc.ToString();
begpos = tempName.IndexOf("(")+1;
endpos= tempName.IndexOf(")");
tempName=tempName.Substring(begpos,endpos-begpos);
procList.Add(tempName);
}
procname.DataSource=procList;
procname.DataBind();
}
</ script >
</ HEAD >
< body >
< Basefont Face = " Tahoma " />
< center >< h2 > ASP.NET 进程杀死器! </ h2 >< BR >
< Table cellspacing = 2 cellpadding = 2 border = 0 BGCOLOR = " #fFCC66 " >
< form id = " frmProc " runat = " Server " method = " post " >
< TR >< TD >< ASP:DropDownList id = " procname " runat = " server " /></ TD >< TD >
进程名字 </ TD ></ TR >
< TR >< TD >
< asp:button id = " btnKill " Text = " 杀死进程 " runat = " server " CausesValidation = " False " onclick = " btnKill_Click " />
</ TD >
< TD >< asp:button id = " btnShow " Text = " 列出所有进程 " runat = " server " CausesValidation = " False " onclick = " btnShow_Click " />
</ TD ></ TR >
</ TABLE >
< center >< asp:Label id = " msg " runat = " server " /></ center >
</ form >
</ center >
</ body >
</ HTML >
以下是C#代码:
<% @ Page Language = " c# " %>
< HTML >
< HEAD >
<% @ Import namespace = " System.Diagnostics " %>
< script language = " C# " runat = " Server " debug = " true " >
void Page_Load(Object Sender, EventArgs e) {
btnKill.Attributes.Add("onclick", "javascript: return confirm('你真的要杀死这个进程吗?');");
}
private void KillProcess( string processName) {
System.Diagnostics.Process myproc= new System.Diagnostics.Process();
//得到所有打开的进程
try{
foreach (Process thisproc in Process.GetProcessesByName(processName)) {
if(!thisproc.CloseMainWindow()){
thisproc.Kill();
}
}
}
catch(Exception Exc)
{
msg.Text+= "杀死" +procname.SelectedItem.Text + "失败!";
}
}
public void btnKill_Click( object sender, System.EventArgs e)
{
KillProcess(procname.SelectedItem.Text);
msg.Text= procname.SelectedItem.Text +" 已经被杀死。";
}
public void btnShow_Click( object sender, System.EventArgs e) {
ArrayList procList =new ArrayList();
string tempName="";
int begpos;
int endpos;
foreach (Process thisProc in System.Diagnostics.Process.GetProcesses()) {
tempName=thisProc.ToString();
begpos = tempName.IndexOf("(")+1;
endpos= tempName.IndexOf(")");
tempName=tempName.Substring(begpos,endpos-begpos);
procList.Add(tempName);
}
procname.DataSource=procList;
procname.DataBind();
}
</ script >
</ HEAD >
< body >
< Basefont Face = " Tahoma " />
< center >< h2 > ASP.NET 进程杀死器! </ h2 >< BR >
< Table cellspacing = 2 cellpadding = 2 border = 0 BGCOLOR = " #fFCC66 " >
< form id = " frmProc " runat = " Server " method = " post " >
< TR >< TD >< ASP:DropDownList id = " procname " runat = " server " /></ TD >< TD >
进程名字 </ TD ></ TR >
< TR >< TD >
< asp:button id = " btnKill " Text = " 杀死进程 " runat = " server " CausesValidation = " False " onclick = " btnKill_Click " />
</ TD >
< TD >< asp:button id = " btnShow " Text = " 列出所有进程 " runat = " server " CausesValidation = " False " onclick = " btnShow_Click " />
</ TD ></ TR >
</ TABLE >
< center >< asp:Label id = " msg " runat = " server " /></ center >
</ form >
</ center >
</ body >
</ HTML >
转载于:https://www.cnblogs.com/coldwine/archive/2005/08/01/204347.html