الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف ممكن اشغل برنامج الجافا اوتوماتيك بمجرد تشغيل الويندوز

مغلق
بدأه jfriend في 13 يونيو 2007 · 24 رد · 9,620 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله و بركاته

لديا سؤال عن كيفية تشغيل برنامج جافا تنفيذي اوتوماتيك بمجرد تشغيل نظام التشغيل

يا جامعة انا عارفة اعمل هادا عن طريق مهام مجدولة او عن طريق نسخ برنامجي في ملف بدء التشغيل يعني ما بدي أنا اللي اقوم بخطوات تشغيله اوتوماتيك بدي كود جافا هي اللي تقوم بتشغيل ملفي اوتوماتيك تمام زي كتير برامج بمجرد ما اعمللها install على الجهاز بتصير تشتغل اوتوماتيك فمش احنا الي خليناها تشتغل، هي لحالها

#2

انت عاوز كود برمجي أخي , واللا أمر للكمبيوتر نفسه ؟؟

اقتباس
If A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut

Albert Einstein

مدخل إلى برمجة وتصميم الألعاب : كيف أبدأ ؟

#3

شكرا جزيلا لك أخي Ala2 VB على سرعة الرد

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

#4

بلى يمكنك عمل ذلك:

-إنشئي ملف batch ذو اللاحقة bat، وليكن اسمه Run_My_App واحفظيه بنفس المجلد الذي يحتوي على الكلاس الرئيسية وضعي فيه أمر تشغيل البرنامج،مثلا:

java my_App

يجب أن تتمكني من تشغيل برنامج الجافا الآن بالضغط المزدوج على أيقونة هذا الملف، إذا لم يعمل البرنامج، تأكدي من كتابة الأمر بشكل صحيح.

- أنشئي ملف batch آخر وسميه Install_My_App

اكتبي فيه التعليمة التالية:

REG add HKLM\Sowftware\Microsoft\Windows\CurrentVersion\RunOnce /v My_APP_Start /d d:\MyJavaWork\MyApp\Run_My_App.bat

لاحظي أن الجزء الأخير (بعد d/) يدل على الملف الأول الذي أنشأناه، ويجب عليك استبدال المسار بالمسار الصحيح لملفك، أنا هنا افترضت أن الملف موجود في مكان ما وذلك للتوضيح.

أعيدي تشغيل الجهاز وسيبدأ برنامجك إذا كان كل شيء صحيح.

حول ملف batch

هو ملف تشغيل ولكن محتوياته قابلة للقراءة، لإنشاء هذا الملف، افتحي المفكرة Notepad واكتبي الأوامر المطلوبة، ثم بعد حفظ الملف وإغلاقه، نغير اللاحقة من txt إلى bat وأظن هذه مسألة سهلة.

لاحظي أن بعد تشغيل الملف الثاني، المسمى install، سيقوم بإنشاء مفتاح لبرنامجك ضمن سجل ويندوز، ولتري هذا المفتاح، من قائمة إبدأ اضغطي على أمر "تشغيل" أو Run، واكتبي regedit ثم enter، اتبعي المسار الذي كتبتيه بعد REG add والذي يبدأ بـ HKLM وهي تعني HKEY_LOCAL_MACHINE إلى أن تصلي للمجلد RunOnce، سترين المفتاح ضمن المجلد إن لم يكن هناك مشاكل.

تشغيل الملف install أكثر من مرة قد يؤدي لمشاكل.

#5

السلام عليكم

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

و اعتذر كتير على الغلبة

#6

السلام عليكم

أخي الكريم عربي عربي اتبعت الخطوات السابقة و لكن للاسف لم يشتغل البرنامج.مع انه عند الضغط مرتين على الملف الاول Run_My_APP بيشتغل لكن لما اضغط مرتين على install الملف التاني بطبعلي محتوى الملف و بحكيلي في خطأ هو too many command line parameters

الملف تبعي هو hello.java موجود على c و ملف الباتش الاول كتبت فيه java hello و حفظته على السي

أما الملف التاني فكتبت جواته

REG add HKLM\Sowftware\Microsoft\Windows\CurrentVersion\RunOnce /v hello_Start /c c:\Run_My_App.bat و حفظته برده على السي

يا ريت يا أخي تحكيلي وين الخطا.

#7

خطؤك بسيط جدا، في آخر التعليمة قبل مسار الملف، يجب أن يكون الحرف d وليس c (أي أنه خطأ طباعي) وبجميع الأحوال الأمر كله له علاقة بويندوز، لذا يمكنك وقبل تحويله إلى باتش، أن تقومي بتجربته من خلال نافذة دوس السوداء. فإذا أعطاك The operation completed successfuly تكوني قد نجحت.

أيضا من شاشة الدوس يمكنك الاستفسار أكثر عن الأمر REG و REG add كالتالي:

REG و enter

سيعطيك الأوامر المتاحة للسجل.

?/REG add سيعطيك شرح للأمر add

يمكنك بعد ذلك تشغيل محرر السجل Run -> regedit.exe لمشاهدة التغييرات.

#9

السلام عليكم شكرا جزيلا لك أخي عربي ربي و الله يبارك فيك

فعلا حكالي The operation completed successfuly و رحت على regedit وتتبعت المسار و لقيته موجود بس للاسف ما اشتغل البرنامج مش عارفة ليش.

#10

قصدك أنه لم يشتغل عند إقلاع الجهاز، صح؟

هل لك أن ترسلي محتويات الملفين الباتش؟

إما كمرفقات أو كتابة ع الشاشة.

#11

تصحيح هام:

بدلا من RunOnce، ضعيها في Run

أي:

CurrentVersion\RunOnce......

تصبح

CurrentVersion\Run....

#12

أيضا لا تنسي أن ترسلي محتويات الملفين الباتش.

#13

السلام عليكم ورحمة الله و بركاته

أخي الكريم فعلا لما غيرت في المسار من RunOnce الى Run اشتغل الملف مع بدء التشغيل لكن ما طلع الoutput حكالي في Exception انه الملف مش موجود هدا يمكن لان الملف موجود على c و الويندوز موجود على I فانا بلاحظ انه الامتداد في شاشة الدوس هو I فبيكتب java hello في الامتداد السابق علشان هيك بحكيلي مش موجود، فكيف ممكن احلالمشكله ، حاولت ارفع الملفين بس ما زبط لان هدا النوع من المرفقات غير مسموح به.

تم تعديل هذه المشاركة بواسطة jfriend في 19 يونيو 2007 في 13:25

#14

أنا لليوم حتى نجحت في تحميل ملف.

لكي تحملي الملفات ضعيهم ضمن ملف zip أظن تعرفين كيف يتم ذلك، أيضا ضعي معهم ملف نصي txt تكتبي فيه مسار كل ملف (بما فيهم ملف الجافا) لأعرف التوزيع.

أرفقي ملف ال zip مع الرد وسيعمل.

#15

أيضا أريد أن تضعي في ملف ال txt أمر السجل(REG) كاملا

#16

السلام عليكم

مرفق المجلد مع ملف txt لتوضيح المسارات

files.zip

تم تعديل هذه المشاركة بواسطة jfriend في 19 يونيو 2007 في 17:13

#17

حسنا المشكلة كما توقعتِ وهي مسار النافذة الذي يختلف عن مسار الملف hello.class لحل هذه المشكلة، أعيدي كتابة الملف Run_My_App.Bat ليصبح:

echo off

path = c:\jbuilder2006\jdk1.5\jre\bin\;%PATH%;

java -cp d:/burhan/jfr; hello

لقد قلبت الكتابة لليسار لتبقى التعليمات واضحة.

أول تعليمة تقوم بمنع التعليمات من الظهور على الشاشة (أزيليها للتحقق من النتائج) 1

الثانية قد لا تحتاجينها، ولكن انا احتجتها لأتي كنت قد دمرت كل مسارات الجافا منذ شهرين تقريبا، انتبهي لطريقة كتابته

الثالثة هي الأهم، لاحظي الأمر

-cp

هو اختصار لـ

class path

وهو يقول للجافا ما هو مسار الملف لاحظي انتهؤه بفاصلة منقوطة ثم فراغ ثم يأتي اسم الكلاس

يمكن وضع أكثر من مسار بشكل متراص، يفصل بينها تلك الفاصلة

أرجو أن تكون قد نجحت العملية الآن.

لأنها نجحت عندي، أخبريني بالنتائج

#18

حاولت جعل الكتابة على اليسار من أجل الكود، لكن لم أنجح، على كل حال، هذا هو الملف

انتبهي لإعادة تسمية المسارات

runner.zip

#19

السلام عليكم

أخي مش فاهمة شو فايدة المسار d:/burhan/jfrا; هل في هدا المسار انا بحدد مسار ملف hello و لا كيف؟

#20

هذا المسار هو مكان الملف hello عندي، أما عندك سيختلف، ولكن من المهم ن تذكريه للجافا بعد الرمز cp- لكي يعمل.

فقط استبدلي هذا المسار بالمسار من عندك.

أما شو الفايدة... الفايدة يا أخت هو أنو بدون هالمسار الويندوز راح تضيع الجافا، فلازم نقول للجافا وين الملف، رغم أن الملف بجانب الباتش!!

توكلي على الله وجربيها...

أنتظر خبر جيد منك.

#21

صباح الخير، يوم جديد من الإرهاق... حتى القهوة لا تجدي..

هذا الباتش المعدل

runner.zip

#22

بالأمس نسيت أن ملفك الجافا في مجلد يختلف عن المجلد عندي، فأرسلت لك الباتش بدون تعديل.

#23

يبدو أني لم أستيقظ بعد، في الباتش الجديد استبدلي الباكسلاش بسلاش بجانب اسم السواقة!!!

أي هذه \ بـ /

#24

السلام عليكم ورحمة الله وبركاته

أخي الكريم عربي عربي اشتغل معايا البرنامج مية المية شكرا كتيييير الك والله يبارك فيك

بس في شغلتين انه شاشة الدوس بتظهر لفترة قصيرة وتطبع echo off و بعدين بتختفي طبعا عن طريق start /B طيب ما في امكانية ما تظهر بتاتا -بس هاي مش مشكلة كبيرة عادي لو ما نحلت-

بس المشكلة انه ملف الجافا اليوزر رح يحدده كيف رح يعرف ملف الباتش بالمسار الجديد؟ انا بقترح انه نكتب و نعدل فيه عن طريق الجافا زي أي ملف تاني فمش عارفة اذا بزبط

#25

للأسف، الشاشة السوداء هي من مزايا الجافا التي لا يمكن التخلص منها بسهولة، يجب أن تتمكني من تشغيل ال jvm عبر ملف exe مصمم بلغة لا تحتاج هذه الشاشة مثلا C.

ولقد بحثت كثيرا في السابق عن حل هذه القضية ولكن لم أجد سوى أسئلة دون إجابة فعلية وحاسمة، وكأن الأمر سر.

-يا jfriend سبقتيني .. كنت أنتظر أن تسير أمورك على ما يرام لأحدثك عن هذه الفكرة (كلامك: انا بقترح انه نكتب و نعدل فيه عن طريق الجافا ) وفكرة أخرى تقرأينها بعد هذه مباشرة.

إذا كنت مستعدة للتحمل، ولديك المعرفة الكافية، فمن الأفضل أن نحل هذه القضية once and for all وبشكل محترف، أي أن تعملي Windowed Installer مثل أي Installer موجود، ولعمل ذلك عليك الإلمام بما يلي:

JFileChooser, أساسيات في AWT و Swing على الأقل عمل نافذة وحقل للنصوص وبضعة أزرار، File و FileReader و FileWriter الموجودين في java.io

أما إذا لم تكوني ملمة بهذه الأمور، فهناك طريق أكثر وعورة، وليس جذابا لأي مستخدم Not-User-Friendly وهو استخدام ال args في الوظيفة: main()

ولكن ستحتاجين للحزمة java.io

-ما رأيك الآن أن تصنعي باتش يقوم بـ Uninstall؟

يمكنك تخيل أن ذلك هو مجرد عكس للعملية Reg add مثلا REG DELETE؟؟

لمزيد من المعلومات، افتحي شاشة Dos واكتبي ?/ REG

أظن أن هذا سيجعل برنامجك متكامل..

بالتوفيق.

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…