在Windows Forms应用程序中,我杀了这样一个进程:
Process[] ps = Process.GetProcessesByName("DataWedge");
foreach (Process p in ps)
p.Kill();
如何在Windows Mobile操作系统中执行此操作?
(此示例在Windows Mobile上不起作用。)
答案 0 :(得分:2)
由于上面的文章不再存在,我使用Wayback Machine让article使用代码。下面是如何使用文章中的代码枚举进程并杀死你想要的进程:
List<ProcEntry> processes = new List<ProcEntry>();
ProcessEnumerator.Enumerate(ref processes);
foreach (ProcEntry proc in processes)
{
if (proc.ExeName == "DataWedge.exe")
{
ProcessEnumerator.KillProcess(proc.ID);
}
}
答案 1 :(得分:1)
您需要枚举设备上运行的进程以获取进程ID。一旦你获得了processId,你就可以做到:
Process process Process.GetProcessById(processId);
process.Kill();
这是一个article来处理枚举过程,它还包括一个kill示例。
答案 2 :(得分:0)
此代码中有一个错误,使其始终返回一个空列表。
首先,添加此常量:
private const uint TH32CS_SNAPNOHEAPS = 0x40000000;
然后这样称呼它:
IntPtr snapshot = CreateToolhelp32Snapshot( TH32CS_SNAPPROCESS | TH32CS_SNAPNOHEAPS, 0 );