IntPtr t=new IntPtr(excel.Hwnd); //得到这个句柄,具体作用是得到这块内存入口 int k= 0;
GetWindowThreadProcessId(t,out k); //得到本进程唯一标志k
System.Diagnostics.Process p=System.Diagnostics.Process.GetProcessById(k); //得到对进程k的引用
p.Kill(); 上面的代码执行到最后一行,也就是:P.Kill会报拒绝访问
怎么解决?
GetWindowThreadProcessId(t,out k); //得到本进程唯一标志k
System.Diagnostics.Process p=System.Diagnostics.Process.GetProcessById(k); //得到对进程k的引用
p.Kill(); 上面的代码执行到最后一行,也就是:P.Kill会报拒绝访问
怎么解决?
在config文件里写加入登录机器的用户名密码。
<identity impersonate="true" userName="zhouwu" password="1"/>
但还是报这个错误
Process[] ps=Process.GetProcesses();
Process [] p=Process.GetProcesses();
string aa = "explorer";
foreach(Process ps in p)
{
if(ps.ProcessName==aa)
{
ps.Kill();
}
}
这样就行了~ 你也可以把string aa="explorer" 换成一个数组 挨着一个个结束