ASP.NET中编程杀死进程
2008-04-24 08:08
253 查看
通过ASP.NET可以对一些无用的进程进行远程杀死,下面的代码先列出正在活动的所有进程,然后进行杀死。需要注意的是:这个文件要放在具有Administrator访问权限的虚拟目录下。
以下是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>
以下是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>
相关文章推荐
- ASP.NET中编程杀死进程
- ASP.NET中编程杀死进程
- ASP.NET中编程杀死进程
- 小技巧:ASP.NET中编程杀死进程
- 在ASP.NET中杀死进程
- 在ASP.NET中杀死进程
- 在ASP.NET中杀死进程
- Asp.net 杀死当前数据库的所有进程 killspid
- 在ASP.NET中杀死进程
- 在ASP.NET中杀死进程
- 在ASP.NET中杀死进程
- 查找 ASP.NET 进程的名称
- ASP.NET程序中常用编程代码(2)
- [编程/ASP.NET]经典模式(classic mode)和集成模式(Integrated mode)的区别
- ASP.NET 让无码编程不在是梦 -.NET通用平台、通用权限、易扩展、多语言、多平台架构框架
- ASP.NET AJAX客户端编程之旅(三)——让JavaScript和C#无障碍沟通:数据类型自动转换&序列化
- ASP.NET AJAX客户端编程之旅(七)——剩下的问题(完结篇)
- ASP.NET程序中常用编程代码(二)
- Web站点风格切换的实现 - Asp.Net 编程 - TraceFact.Net
- C# 6 与 .NET Core 1.0 高级编程 - 40 ASP.NET Core(上)