PDA

View Full Version : بستن پروسس Explorer.exe



ایمان اختیاری
یک شنبه 05 اردیبهشت 1389, 11:24 صبح
سلام ..
من برای بستن پروسس explorer.exe از قطعه کدهای زیر استفاده کردم


foreach (Process clsProcess in Process.GetProcesses())
{

listBox1.Items.Add(clsProcess.ProcessName.ToString ());


if (clsProcess.ProcessName.StartsWith("explorer"))
{

clsProcess.Kill();

}

}





foreach (Process process in Process.GetProcessesByName("explorer"))
{
process.Kill();
process.WaitForExit();
}





اما مشکلی که پیش اومد این بود که بلافاصله explorer.exe دوباره اجرا می شد ..
خب .. کسی راهی داره که بشه بستن و اجرا کردن این پروسس رو خودمون به دست بگیریم ؟

ایمان اختیاری
یک شنبه 05 اردیبهشت 1389, 11:27 صبح
این رو هم اضافه کنم روی فریم ورک 4 تست می کنم سیستم عامل هم هم 7 رو تست زدم هم xp

behnam25214
یک شنبه 05 اردیبهشت 1389, 14:03 عصر
من هم الان امتحان کردم دوباره خودش اجراکرد. با 3.5.

BILLY_Mgs
یک شنبه 05 اردیبهشت 1389, 14:38 عصر
بعد از اینکه بستیش فایل شو پاک کن . یا بریزش یه جا دیگه که بعدا لازمت میشه...

Shahram_Shobeiri
یک شنبه 05 اردیبهشت 1389, 14:46 عصر
از xp به بعد ویندوز یاد گرفت که اگه explorer.exe بسته شد خودش دوباره بازش کنه. این یه مکانیزم امنیتیه. در ضمن ویندوز نمیگذاره که explorer رو حذف کنید. اگه قصد نوشتن ورمی چیزی دارید باید بگم که درسته که می گن امنیت ویندوز در پیته و ... اما انقدر هم در پیت نیست!!! :متعجب:

behnam25214
یک شنبه 05 اردیبهشت 1389, 15:11 عصر
از xp به بعد ویندوز یاد گرفت که اگه explorer.exe بسته شد خودش دوباره بازش کنه. این یه مکانیزم امنیتیه. در ضمن ویندوز نمیگذاره که explorer رو حذف کنید. اگه قصد نوشتن ورمی چیزی دارید باید بگم که درسته که می گن امنیت ویندوز در پیته و ... اما انقدر هم در پیت نیست!!! :متعجب:

دوست عزیز
imans62 نمیخواد که فایلش رو پاک کنه میخواد از Process پاکش کنه.

FastCode
یک شنبه 05 اردیبهشت 1389, 17:07 عصر
از xp به بعد ویندوز یاد گرفت که اگه explorer.exe بسته شد خودش دوباره بازش کنه. این یه مکانیزم امنیتیه. در ضمن ویندوز نمیگذاره که explorer رو حذف کنید. اگه قصد نوشتن ورمی چیزی دارید باید بگم که درسته که می گن امنیت ویندوز در پیته و ... اما انقدر هم در پیت نیست!!! :متعجب:

با زبان اسمبلی میشه.
با زبان C هم میشه.
با C++ هم میشه.
با .net هم میشه ولی یک مقدار سخته.
نتیجه میگیریم میشه.
برای مثال در C:
اول آدرس فیزیکی رو به دست می آوریم.
بعد با abswrite فایل رو با 0x90 == NOP عوض میکنیم.:لبخند:
تمامش هم با کتابخانه standard انجام میشه.
با assembly هم مثل C فقط حجم برنامه شما حدود 100 بایت میشه و به جای STL از INT استفاده میکنید.
با .net هم باید از InterOp استفاده کنید.

با C++ هم فقط کافیه library های C رو استفاده کنید چون کاملا" Compatible هستند.:لبخند:

ایمان اختیاری
یک شنبه 05 اردیبهشت 1389, 17:18 عصر
بابا تو vb راحت انجام دادم و شد ... راحت می شه پروسسش رو kill کرد ولی اینجا نمی دونم چرا قاطی می کنه ... توی xp هم با وی بی این کار رو کردم ...
الان می گردم کدش رو هم پیدا می کنم اینجا می ذارم

ایمان اختیاری
یک شنبه 05 اردیبهشت 1389, 17:46 عصر
اون کدی که توی vb نوشته بودم رو نیگا کردم خیلی دراز و کشدار بود
الان تو msdn این کد رو پیدا کردم کار می کنه فقط یه چیزی ..
وقتی کد رو اجرا می شه یه پنجره ی اجرای دستور داس می یاد .. می شه اونو حذف کرد یا نشون نداد :



System.Diagnostics.Process.Start("taskkill.exe", " /f /im explorer.exe");

ایمان اختیاری
یک شنبه 05 اردیبهشت 1389, 18:02 عصر
اینم جواب این سوال
از تو code project پیداش کردم

System.Diagnostics.ProcessStartInfo procStartInfo = new System.Diagnostics.ProcessStartInfo("taskkill.exe", " /f /im explorer.exe");

// The following commands are needed to redirect the standard output.
// This means that it will be redirected to the Process.StandardOutput StreamReader.
procStartInfo.RedirectStandardOutput = true;
procStartInfo.UseShellExecute = false;
// Do not create the black window.
procStartInfo.CreateNoWindow = true;
// Now we create a process, assign its ProcessStartInfo and start it
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo = procStartInfo;
proc.Start();

MicrosoftH@ymail.com
چهارشنبه 13 بهمن 1389, 15:07 عصر
این فایل Explorer فک نکنم اصلا بشه از حالت اجرا خلاص کردش اگرم بشه اجرا میشه چون ویندوز به این فایل و فایل Shell32.dll بستگی داره حالا فک نکنم اصلا بزاره حذفش کنی در ضمن از فایل های حیاطی که ویندوز برای کار کردن اجتیاج داره یک کپی تهیه شده و به محض حذف جایگزین شده و اجرا میشه