delphi4arab منتديات دلفي للعرب
كيف اقوم بأغلاق الشاشه برمجيا - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيف اقوم بأغلاق الشاشه برمجيا (/showthread.php?tid=13002)



كيف اقوم بأغلاق الشاشه برمجيا - عَمر - 16-10-2025

السلام عليكم

اريد كود لاغلاق الشاشه
جربت هذا الكود لم ينجح

كود :
ShellExecute(Handle, 'open', PChar('rund1132.exe'), PChar('-l'), nil, sw_show);



كود :
rundll32.exe user32.dll,LockWorkStation

او عن طريق
كود :
vk_win+L



RE: كيف اقوم بأغلاق الشاشه برمجيا - myrmidons - 16-10-2025

إليك كود بسيط يقوم بإغلاق الشاشة (إيقاف تشغيل الشاشة مؤقتًا) باستخدام واجهة برمجة التطبيقات الخاصة بنظام Windows:

✅ كود لإيقاف تشغيل الشاشة:
كود :
uses   Windows, Messages; procedure TurnOffScreen; begin   SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, 2); end;

? شرح المعلمات:
  • HWND_BROADCAST
    يرسل الرسالة إلى جميع النوافذ.
  • WM_SYSCOMMAND
    رسالة نظام للتحكم.

  • SC_MONITORPOWER
    امر خاص بالطاقة.
  • لتشغيل، 0
  • لتوفير الطاقة، 1
  • لإيقاف التشغيل 2


? مثال على الاستخدام داخل حدث زر:
كود :
procedure TForm1.Button1Click(Sender: TObject); begin   TurnOffScreen; end;



RE: كيف اقوم بأغلاق الشاشه برمجيا - عَمر - 19-10-2025

هذا الكود مخصص لاطفاء الشاشه


اريد كود لعمل locked للوندوز الذي يحمل باسوود ( قفل شاشة الوندوز ) Lock
من ضمن اوامر اغلاق الجهاز في قائمة ابدا Shut down

اختصار الكيبورد
win + L




RE: كيف اقوم بأغلاق الشاشه برمجيا - myrmidons - 19-10-2025

أجل تنفيذ وظيفة مشابهة لأمر Win + L (قفل الشاشة) باستخدام كود برمجي، يمكنك استخدام أحد هذه الأساليب حسب البيئة التي تعمل بها: 

PHP كود :
user32.dll,LockWorkStation 


PHP كود :
uses
  Windows
;

procedure LockScreen;
begin
  LockWorkStation
;
end; 



RE: كيف اقوم بأغلاق الشاشه برمجيا - عَمر - 19-10-2025

كود :
ShellExecute(0, 'open', 'rundll32.exe', 'user32.dll,LockWorkStation', '', SW_SHOWNORMAL);



RE: كيف اقوم بأغلاق الشاشه برمجيا - myrmidons - 20-10-2025

اجل، اعتماد هذه الطريقة
كود :
user32.dll,LockWorkStation

التي وجهتك اليها في بداية المشاركة بتيح لك الوصول الى النتيجة المرجوة، لكن عيبها انك استعملت وسائط "rundll32.exe" لا تسمح لك بمعالجة الاستثناءات ان حدثت، على عكس استدعاء "المباشر في ذاكرة تطبيقك" لدالة النظام LockWorkStation التي هي الأمثل.