PDA

View Full Version : بستن یک پروسس به همراه تمامی فرزندان و پدران وی



tanha70
پنج شنبه 03 اردیبهشت 1394, 20:24 عصر
سلام

من نمونه کدهای زیادی رو برای کیل کردن یک پروسس استفاده کردم ولی یه کدی که 100 درصد بتونه یه پروسس رو حتی در صورتی که پروسس دیگه ای در حال استفاده از اون هست رو ببنده پیدا نکردم.
از دوستان میخوام که اگر کسی کدی داره که میتونه نام یه پروسس رو بگیره و تمامی پروسس های درگیر با اونو ببنده در اختیار بنده هم بذاره.
ممنون...

ghasem110deh
پنج شنبه 03 اردیبهشت 1394, 20:59 عصر
سلام
ببنید این بدرد میخوره !

http://www.codeproject.com/Tips/803226/How-to-kill-process-by-process-name-and-user-name

fafa_n6190
پنج شنبه 03 اردیبهشت 1394, 21:47 عصر
private static void KillProcessAndChildren(int pid)
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher
("Select * From Win32_Process Where ParentProcessID=" + pid);
ManagementObjectCollection moc = searcher.Get();
foreach (ManagementObject mo in moc)
{
KillProcessAndChildren(Convert.ToInt32(mo["ProcessID"]));
}
try
{
Process proc = Process.GetProcessById(pid);
proc.Kill();
}
catch (ArgumentException)
{
// Process already exited.
}
}

tanha70
سه شنبه 08 اردیبهشت 1394, 21:36 عصر
من کلاس های زیر رو وارد کردم.


using System.Management;


ولی بازم به

ManagementObjectSearcher

گیر میده.
ممنون میشم بفرمایید از چه کلاس هایی باید استفاده کنم؟

elec60
چهارشنبه 09 اردیبهشت 1394, 07:04 صبح
dll فضای نام System.Management رو به Reference ها هم اضافه کنید.

ali_72
چهارشنبه 09 اردیبهشت 1394, 07:19 صبح
Process.GetCurrentProcess().Kill();

tanha70
پنج شنبه 17 اردیبهشت 1394, 18:42 عصر
با تشکر از تمامی دوستان گرامی.
یه زمانایی پیش میاد که همین تابع نمیتونه کار کنه، مثلا زمانایی که یه برنامه دیگه برنامه ای که ما میخوایم ببندیم رو درگیر کرده باشه.
تو این زمان های به چه شکلی میتونیم برنامه رو ببندیم؟

tanha70
جمعه 18 اردیبهشت 1394, 15:47 عصر
دوستان کسی نبود؟!