打开多个Word,如何通过进程关闭指定的一个?
我写的如下代码,为什么不能实现:
System.Diagnostics.Process[] ProcessList = Process.GetProcesses();
foreach (Process p in ProcessList)
{
if (string.Compare(p.MainWindowTitle,name) == 0) //name是word文档的文件名(例如:aaa.docx,name就是aaa)
{
p.Kill();
}
}
求牛人给我指条道,谢谢了
我写的如下代码,为什么不能实现:
System.Diagnostics.Process[] ProcessList = Process.GetProcesses();
foreach (Process p in ProcessList)
{
if (string.Compare(p.MainWindowTitle,name) == 0) //name是word文档的文件名(例如:aaa.docx,name就是aaa)
{
p.Kill();
}
}
求牛人给我指条道,谢谢了
你是通过什么方法打开的word???你需要获取你需要关闭的进程句柄然后再操作.
[DllImport("User32.dll", CharSet = CharSet.Auto)] //记录每个打开word进程ID
IntPtr excelHwnd = (IntPtr)wordApp.Hwnd;
int excelProcessID = 0;
GetWindowThreadProcessId(excelHwnd, out excelProcessID); //结束对应进程
System.Diagnostics.Process p = System.Diagnostics.Process.GetProcessById(excelProcessID);