delphi4arab منتديات دلفي للعرب

نسخة كاملة : مالمشكلة مع إجرائية قتل الـ Process ؟
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته

لاحظ إجرائية قتل Process هاته :

PHP كود :
function KillTask(ExeFileName: string): integer;
const
PROCESS_TERMINATE = $0001;
var
ContinueLoop: BOOL;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
Result 
:= 0;
FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
while 
Integer(ContinueLoop) <> 0 do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =UpperCase(ExeFileName))) then
Result 
:= Integer(TerminateProcess(OpenProcess(PROCESS_TERMINATE,BOOL(0),FProcessEntry32.th32ProcessID),0));
ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
end;
CloseHandle(FSnapshotHandle);
end; 

استعملتها لقتل Process : explorer.exe

هكدا :

PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
begin
  KillTask
('explorer.exe');
end; 

ولكن الامور التي وقعة هي :

1- ثم قتل explorer.exe
2 - بعد 1 ثانية اعيد خلقه اوتوماتكيا لا اعرف كيف ؟

انا اود ان يتم قتله فقط

كيف يتم هدا بارك الله فيكم ؟

بالتوفيق
وعليكم السلام ورحمة الله وبركاته
لن يدعك Windows تقتله نهائيا بهته السهولة
أظن أن هناك Service يقوم بحمايته ابحث عنه وأوقفه.
وعليك السلام
أنت قتلته وانتها الأمر لذا الدالة تشتغل بشكل عادي
أما الخلق فإن الوندوز يعيد خلقها
جرب في برنامج آخر وليس في برامج الوندوز
+
أنت غلقت explorer الوندوز (المسؤول عن عرض النوافذ وتصفح الملفات وو..)
ربما كنت تقصد مستكشف الأنترنت
السلام عليكم و رحمة الله

كود :
TerminateProcess(OpenProcess(PROCESS_TERMINATE,BOOL(0),FProcessEntry32.th32ProcessID),[color=Red]0[/color]));

يجب عليك تعيين قيمة ExitCode مختلفة عن الصفر لكي لا يتم اعادة تشغيله.
اترك لك البحث و التجربة.
بارك الله فيك اخي STRELiTZIA لقد غيرة 0 الى 1 ونجحة العملية

لكن ممكن تقل لنا ماهي القيم التي ياخدها البارمتر ExitCode و تشرح دور كل واحد ؟ شرح الله صدرك بالمحبة والإطمئنان

بارك الله فيك وجزاك خيرا

بالتوفيق