البرنامج النصي الدفعي لإعادة تطبيق بشكل شرعي
يمكن أن يتسبب النظام العادي و / أو الأحداث البيئية ، مثل الاستئناف من وضع الانتظار أو فقد الاتصال بالشبكة ، في حدوث مشكلات لبعض التطبيقات التي تتوقع أن تكون متصلة ومتصلة دائمًا. لذلك إذا كان لديك تطبيق معين يتعطل أو يذهب إلى وضع "لا يستجيب" بشكل متكرر إلى حد ما وإعادة التشغيل هو الإصلاح الوحيد لذلك ، فلدينا إصلاح بسيط لك في شكل برنامج نصي دفعي قابل للتخصيص لقتل التطبيق ببساطة و إعادة تشغيله.
بالإضافة إلى الوضع الواضح أعلاه ، يمكن استخدام هذا البرنامج النصي لمجموعة متنوعة من المهام المفيدة ، مثل:
- أعد تشغيل التطبيق بسهولة عن طريق النقر المزدوج أو باستخدام مفتاح التشغيل السريع.
- أعد تشغيل برنامج فقط عند تعليقه أو عدم الاستجابة.
- تشغيل كمهمة مجدولة للتأكد من تشغيل التطبيق دائمًا.
- في أي مكان آخر تريد أتمتة إعادة تشغيل الشرطية لأحد التطبيقات.
يجب أن يكون تخصيص النص توضيحيًا ذاتيًا من خلال التعليقات ، لذلك فقط قم بتكوين النص البرمجي بالشكل المناسب وتعيينك بالكامل.
النص
ECHO OFF ECHO إعادة تشغيل التطبيق ECHO كتبه: جاسون Faulkner ECHO SysadminGeek.com ECHO. صدى صوت. SETLOCAL EnableExtensions REM أدخل معلومات التطبيق. SET AppName = اسم التطبيق SET ExeFile = FileToLaunch.exe SET ExePath = C: PathToApplication REM حدد الشروط لقتل التطبيق. REM A value of 1 = Yes، 0 = No SET KillIfRunning = 1 SET KillIfNotResponding = 1 SET KillIfUnknownStatus = 1 REM حدد متى تبدأ التطبيق: REM 1 = ابدأ فقط إذا كانت العملية السابقة قد قتلت. REM 0 = ابدأ التطبيق بغض النظر. SET StartOnlyIfKilled = 1 SET KillStatus = "٪ TEMP٪ KillStatus.tmp.txt" SET Success = 0 ECHO Killing٪٪ AppName٪ instance… IF ٪ KillIfRunning٪ == 1 CALL: CheckKillStatus "٪ ExeFile٪" "RUNNING "إذا كان ٪ KillIfNotResponding٪ == 1 CALL: CheckKillStatus"٪ ExeFile٪ "" NOT RESPONDING "IF ٪ KillIfUnknownStatus٪ == 1 CALL: CheckKillStatus"٪ ExeFile٪ "" UNKNOWN "ECHO. IF ٪ StartOnlyIfKilled٪ == 1 (IF ٪ Success٪ == 0 GOTO End) ECHO Restarting٪ AppName٪… START "٪ ExeFile٪" "٪ ExePath ٪٪ ExeFile٪" ECHO. إذا كان EXIST٪ KillStatus٪ DEL / F / Q٪ KillStatus٪ ENDLOCAL: CheckKillStatus ECHO Killing بالحالة:٪ ~ 2 TASKKILL / FI "STATUS eq٪ ~ 2" / IM "٪ ~ 1" / F>٪ KillStatus٪ SET / P KillResult = < %KillStatus% FOR /F "tokens=1,* delims=:" %%A IN ("%KillResult%") DO ( ECHO %%A:%%B IF /I %%A==SUCCESS SET /A Success=%Success%+1 ) :End
استنتاج
في حين يمكنك العثور على التطبيقات التي تعمل بشكل أساسي على نفس الوظيفة ، باستخدام برنامج نصي بسيط مثل هذا يتجنب وجود "برنامج آخر" قيد التشغيل في الخلفية.