delphi4arab منتديات دلفي للعرب
برمج الوقت الذي تريد فيه إطفاء جهازك - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : مصادر دلفي مفتوحة تعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=14)
+--- الموضوع : برمج الوقت الذي تريد فيه إطفاء جهازك (/showthread.php?tid=1205)



برمج الوقت الذي تريد فيه إطفاء جهازك - paix144 - 14-09-2009

السلام عليكم إخواتي الكرام
هذا كود سورس لإطفاء الجهاز في مدة معينة


برمج الوقت الذي تريد فيه إطفاء جهازك - nabilkeb - 15-09-2009

ربما ينفعك هذا أيضـــا //مقتبس:


- لدينــا 5 أزرار ، و لتكن الكابشن على التوالي :
الأولىConfusedhutdown
الثانية:reboot
الثالثة:log off
الرابعة:force
الخامسةower off


كود :
procedure getshutdown[U]privilege[/U];//this procedure is used to get the shutdown or reboot or poweroff privilege var hdlProcessHandle:cardinal; hdlTokenHandle:cardinal; tmpLuid:LUID_AND_ATTRIBUTES; tkp:TOKEN_PRIVILEGES; tkpNewButIgnored:TOKEN_PRIVILEGES; lBufferNeeded:cardinal; begin tmpluid.Attributes:=SE_PRIVILEGE_ENABLED; hdlProcessHandle:= GetCurrentProcess; OpenProcessToken(hdlProcessHandle,(TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY),hdlTokenHandle); LookupPrivilegeValue('','SeShutdownPrivilege',tmpluid.Luid); tkp.PrivilegeCount:=1; tkp.Privileges[0]:=tmpluid; AdjustTokenPrivileges(hdlTokenHandle,False,tkp,16,tkpNewButIgnored,lBufferNeeded); end;
* هذا الكود في الواقع هو ليس لإيقاف أو إعادة تشغيل الكمبيوتر أو ... ولكنه كود ضروري استعماله خاصة مع windows2000 أو windowsXp وهو يستعمل للحصول على إمتياز إيقاف أو إعادة تشغيل الكمبيوتر لأنه دون الحصول على الإمتياز لا يمكنك تطبيق الأمر...

و الآن نكون قد وصلنا إلى الخطوة الأهم المتمثلة في كيفية إيقاف أو إعادة تشغيل الكمبيوتر ...
كود :
procedure TForm1.Button1Click(Sender: TObject); begin if not (exitwindowsex(ewx_shutdown,0)) then begin //Shutdown computer getshutdownprivilege; exitwindowsex(ewx_shutdown,0); end; end; procedure TForm1.Button2Click(Sender: TObject); begin if not (exitwindowsex(ewx_reboot,0)) then begin //Restaring computer getshutdownprivilege; exitwindowsex(ewx_reboot,0); end; end; procedure TForm1.Button5Click(Sender: TObject); begin if not (exitwindowsex(ewx_poweroff,0)) then begin //Power off computer getshutdownprivilege; exitwindowsex(ewx_poweroff,0); end; end; procedure TForm1.Button3Click(Sender: TObject); begin if not (exitwindowsex(ewx_logoff,0)) then //Log off computer exitwindowsex(ewx_logoff,0); end; procedure TForm1.Button4Click(Sender: TObject); begin exitwindowsex(ewx_force,0); end;
- الدالة المستعملة لإيقاف أو إعادة تشغيل الكمبيوتر أو ... هي الدالة Exitwindowsex و نجد فيها الخيارات التالية:

Ewx_shutdown:لإيقاف تشغيل الكمبيوتر.. لتحقيق ذلك لابد من الحصول على الإمتياز

Ewx_Reboot:لإعادة تشغيل الكمبيوتر.. لتحقيق ذلك لابد من الحصول على الإمتياز

Ewx_poweroff:لإيقاف تشغيل الكمبيوتر مباشرة أي دون إظهار الرسالة ... لتحقيق ذلك لابد من الحصول على الإمتياز و لابد أن يكون جهازك يدعم إيقاف

التشغيل المباشر و إذا لم يكن الجهاز يدعم هذه الخاصية سيتم إعادة التشغيل فقط

Ewx_force:لإغلاق جميع التطبيقات العاملة حاليا ... وهو خيار غير آمن

Ewx_logoff:لقطع الإتصال مع الشبكة و تسجيل خروج المستخدم الحالي


الآن و عند تشغيل البرنامج تلاخظ أنه سيحدث عند النقر على:

الزر الأول:إيقاف التشغيل
الزر الثاني:إعادة التشغيل
الزر الثالث:قطع الإتصال مع الشبكة
الزر الرابع:غلق جميع التطبيقات
الزر الخامس:إيقاف التشغيل المباشر
[FONT=Tahoma]
- بمعرفة كل هذا ، يمكنكم إخواني وضع برنامج لتنفيد أي مهمة بتوقيت معين يختاره المستخدم .

بالتوفيق



برمج الوقت الذي تريد فيه إطفاء جهازك - AL-MOB4RM3G - 15-09-2009

اولا اشكر الآخ paix144 على السورس,,

ثآنيا اشكر الأخ نبيل على مشآركته الرآئعة,

بارك الله فيكم ونفع بكم, وزآدنا الله وإيآكم من علما و عملا نآفعا,


برمج الوقت الذي تريد فيه إطفاء جهازك - paix144 - 15-09-2009

السلام عليكم
بارك الله فيك أخي nabilkeb على جملة الأكواد
نورت الموضوع بمرورك الطيب أخي AL-MOB4RM3G

جازاكم الله كل خير إخواتي الكرام


برمج الوقت الذي تريد فيه إطفاء جهازك - paix144 - 15-09-2009

السلام عليكم
لقد قمت بتعديل السورس كود