请教如何根据kill Excel Application 的进程。
用微软自带Interop.Excel的操作,大家都知道即使关闭了,仍存在着EXCEL进程。
//以上代码在vs.net运行(即F5),是正常的。
但是部署到iis中,则 GetWindowThreadProcessId里面返回的processId总是0
不管我在dcomcnfg的标识中,用哪种启动方式,都不可以(我都是用administrator)
于是我想着,既然上面方式行不通,换种方式
baidu google,搜了很久,都没有一个能解决。
麻烦大家有试过可以成功的,再贴出来。
谢谢!
[DllImport("User32.dll", CharSet = CharSet.Auto)]
private static extern int GetWindowThreadProcessId(IntPtr hwnd, out uint ID);
IntPtr hwndExcel = new IntPtr(_excel.Hwnd);
GetWindowThreadProcessId(hwndExcel, out processId);
//根据获取到的processId,就可以 kill该进程。
//以上代码在vs.net运行(即F5),是正常的。
但是部署到iis中,则 GetWindowThreadProcessId里面返回的processId总是0
不管我在dcomcnfg的标识中,用哪种启动方式,都不可以(我都是用administrator)
于是我想着,既然上面方式行不通,换种方式
IntPtr hwndExcel = new IntPtr(_excel.Hwnd);
Process[] localByName = Process.GetProcessesByName("excel");
foreach (Process p in localByName)
{
//这里可以获取到进程名称为Excel的进程。
//但是我如何转换成Excel Application,
//也就是说我要如何才能知道该进程其实对应加载的是哪个.xls文件
}
baidu google,搜了很久,都没有一个能解决。
麻烦大家有试过可以成功的,再贴出来。
谢谢!
...全文
相关推荐
杀死Excel进程
**`KillExcel(Microsoft.Office.Interop.Excel.Application AppInstance)`** - **描述**:根据给定的Excel应用实例来结束其对应的进程
调用Excel后的解决方法
**结束进程**:利用`System.Diagnostics.Process`类根据进程ID强制结束进程。
CS强制关闭Excel进程
`方法根据该ID获取到进程对象,最后调用`Process.Kill`方法来强制关闭进程。
excel.exe完美关闭绝杀
**创建Excel对象**: ```csharp Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application
asp.net excel打印
根据给定的文件信息,我们可以总结出以下与ASP.NET中Excel打印相关的知识点:### ASP.NET中的Excel打印技术#### 1.


