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

برنامج تهئية برامج الجافا (JKelany Java Installer )

رائج
بدأه Mahmoud Kelany في 2 فبراير 2011 · 65 رد · 6,600 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

بسم الله الرحمن الرحيم

نتاجا لما تم مناقشته فى الموضوع التالى

نقاش لعمل مشروع Java Installer لكى يمكننا من تسطيب برامجنا بعد الانتهاء منها

فقد تم بحمد الله الانتهاء بشكل اولى للبرنامج

وهذه صوره من البرنامج

مع دعم اللغه العربيه

اولا صور البرنامج الذى يقوم بالتسطيب

post-217802-075083600 1296650403_thumb.p

post-217802-045524800 1296650406_thumb.p

post-217802-032157000 1296650411_thumb.p

post-217802-004073000 1296650416_thumb.p

post-217802-022917500 1296650419_thumb.p

وطبعا بالمثل باللغه الانجليزية

post-217802-066945400 1296650424_thumb.p

post-217802-051531000 1296650430_thumb.p

post-217802-022874800 1296650433_thumb.p

ثانيا صور البرنامج الذى يقوم باخذ ملف الجار منك ويخرج لك ملفاٌ قابلا للتسطيب

post-217802-009295300 1296650380_thumb.p

post-217802-017912800 1296650388_thumb.p

post-217802-028598100 1296650394_thumb.p

post-217802-085208300 1296650399_thumb.p

ولتحميل الكود الخاص بعمليه التسطيب ( و هو الرئيسى فى هذه العمليه )

JKelanyInstaller_V1.6.zip

ولتحميل الكود الخاص بالبرنامج الذى يقوم باخذ الجار ويخرج لك ملفاً قابلا للتسطيب

JKelanyInstaller API_v1.6.zip

ولتحميل البرنامج النهائى القابل للاستخدام

JKelanyInstaller Program v1.6.jar.zip

ملحوظه هناك فى الاكواد المرفقه ملفات jar files وملفات اخرى وذلك على سبيل التجربه

يتم ازالتها من داخل الملف النهائى بعد التأكد والاطمئنان من ان البرنامج يعمل بشكل جيد

انتظر تعليقاتكم واستفساراتكم

بالتوفيق يارب لنا جميعا

ودعواتكم للشعب المصرى لمزيد من الاستقرار والاطمئنان ان شاء الله

المرفقات
API_AR_1.pngAPI_AR_2.pngAPI_EN_1.pngAPI_EN_2.pngINS_AR_1.pngINS_AR_2.pngINS_AR_3.pngINS_AR_4.pngINS_AR_5.pngINS_EN_1.pngINS_EN_2.pngINS_EN_3.png
3

Software Developer
Mahmoudkelany.com


 

#2

عمل جميل يا محمد

البرنامج لو كان يعتمد على مكتبة لا يعمل

هل جربت الموضوع؟

كما أن الـ unistaller لا يعمل

بالمناسبة لدي ملاحظة على موضوع وضع اسمك على الـ installer

هذا حقك في برنامجك لكنه ليس حقك على برامج الآخرين (البرامج الناتجة بعد عملية التهيئة)

بالمناسبة كلمة تسطيب ليست عربية استخدم بدلاً منها تنزيل أو تهيئة

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#3
علاء الصالحي كتب:

عمل جميل يا محمد

انا محمود ههههههههههههه

البرنامج لو كان يعتمد على مكتبة لا يعمل

هل جربت الموضوع؟

لا يعمل والحمدلله وانا جربته

عندما يكون لديك برنامج يعتمد على مكتبه

فانك تقوم باختيار ملف الجار

وبعدها تقوم باختيار ملف المكتبه او المكتبات

ويتم وضع ملف المكتبات اثناء عمليه التسطيب بجوار ملف الجار فى مجلد lib

كما أن الـ unistaller لا يعمل

هو كان شغال قبل ما اضع المكتبات لكن بصراحه مش عدلت عليه علشان يحذف ملف الـlib

وانا بنزل الموضوع كنت هاعمله لكن لا ادرى ما الذى انسانى

بالمناسبة لدي ملاحظة على موضوع وضع اسمك على الـ installer

هذا حقك في برنامجك لكنه ليس حقك على برامج الآخرين (البرامج الناتجة بعد عملية التهيئة)

البرنامج مفتوح المصدر اخى علاء والكود لديك يمكنك التعديل كيفما تشاء

بالمناسبة كلمة تسطيب ليست عربية استخدم بدلاً منها تنزيل أو تهيئة

اممممم سهله laugh.gif

تحياتي

دا مثال تم صنعه بواسطه هذا البرنامج

وهو يعمل بعدما يتم تسطيبه

JKelany Char Freqancy.jar

وبالنسبه للـ Uninstall

جربتها دلوقتى هي بتمسح ملف الجار الاساسى ولكن لا تزيل مجلد المكتبات

او مجلد الاختصار على سطح المكتب

وسوف يتم تعديلها ان شاء الله

Software Developer
Mahmoudkelany.com


 

#4

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

لاحظت ان الزرار another folder غير مفعل .. لماذا ؟

2coscqr.jpg
#5
Ahmed-Ghanem كتب:

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

لاحظت ان الزرار another folder غير مفعل .. لماذا ؟

لسه مش عارف هاعمل فيه ايه هههههههههه

بجد والله

لسه يعنى :)

Software Developer
Mahmoudkelany.com


 

#6

المشروع جيد جدا و أرجو أن يكون جاهزا وقت اتمامي للمشروع الذي أعمل عليه حاليا ;)

بالتوفيق :)

#7

مجهود رائع أخي محمود

اقتباس
بالمناسبة كلمة تسطيب ليست عربية استخدم بدلاً منها تنزيل أو تهيئة

ربما "تثبيت" أقرب ل "install" أخي علاء ؟

1

سبحانك اللهم و بحمدك ، أشهد أن لا إله إلا أنت ، أستغفرك ربي و أتوب إليك

مدونتي

http://www.facebook.com/brmjt

#8

عمل معي المثال الذي وضعته

وشكلك ضاربلي واحد مخصوص :)

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

(بالمناسبة كلمني عن هذه النقطة كيف جعلته يدعم المكتبات)

بالنسبة للـ Uninstaller عندي لا يمسح أي شيء

ولا أعرف لذلك سبباً

يا عمي الحج أنتا الي خسران بكرة هتلاقين شايل اسمك من كل النواحي :lol:

أعتقد أخي محمد أن تثبيت أفضل

اعتمد يا محمود أفندي

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#9

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

لكن اخي هل من الممكن أيضا ان تكون هناك نسخة باللغة الانجليزية يعني اجيانا الواحد بيحتاج للغات اخرى

على كل حال شكرا يا طيب

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


رسم المخططات البيانية بواسطة الجافا


 


كتاب تحليل وتصميم نظم المعلومات


#10
محمد رضى كتب:

المشروع جيد جدا و أرجو أن يكون جاهزا وقت اتمامي للمشروع الذي أعمل عليه حاليا ;)

بالتوفيق :)

ربنا يخليك يارب

الحمدلله على كل شىء

ربنا يوفققك بمشروعك يارب

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

محمد سمير كتب:

مجهود رائع أخي محمود

ربما "تثبيت" أقرب ل "install" أخي علاء ؟

اشكرك اخى محمد

شهاده اعتز بها

هو بس علاء محبكها شويه ههههههههههtongue.gif

Software Developer
Mahmoudkelany.com


 

#11
علاء الصالحي كتب:

عمل معي المثال الذي وضعته

ههههههه طيب كويس

وشكلك ضاربلي واحد مخصوص :)

عادى وايه ضمنك ههههههه مايمكن كدا هههههه

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

امممم المكتبات هتنضاف فى مجلد اسمه lib بجوار البرنامج

(بالمناسبة كلمني عن هذه النقطة كيف جعلته يدعم المكتبات)

حاضر هاكلمك بس استنى عليا المشاركه القادمه ان شاء الله

بالنسبة للـ Uninstaller عندي لا يمسح أي شيء

ولا أعرف لذلك سبباً

وظيفته انه هيمسح كل الملفات التى بجواره ما عدا نفسه طبعا

لو عندك فكره تانيه اشجينى

يا عمي الحج أنتا الي خسران بكرة هتلاقين شايل اسمك من كل النواحي :lol:

عادى يا حاج البرنامج بتاعك

تحياتي

Software Developer
Mahmoudkelany.com


 

#12
vector_ever كتب:

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

اشكرك اخى الكريم

وشكرا على المتابعه الطيبه منك

لكن اخي هل من الممكن أيضا ان تكون هناك نسخة باللغة الانجليزية يعني اجيانا الواحد بيحتاج للغات اخرى

هذا البرنامج يدعم اللغه العربيه والانجليزية

ان كان شىء اخر تقصده فيرجى الايضاح

على كل حال شكرا يا طيب

الشكر لله وحده

Software Developer
Mahmoudkelany.com


 

#13

فكره اضافه المكتبات

عندما يقوم المستخدم بعمل فتح للمكتبات

ويختار المكتبات

اقوم انا بكتابه اخر اسم للملف

يعنى مثلا مسار ملف هكذا

d:/test/lib/myLib.jar

انا بقا باخد اخر حاجه اللى هيا myLib.jar

واخزن كل المكتبات فى ملف reso.jk

اقوم بكتابه المكتبات التى اختارها داخل ملف الجار فى المسار التالى

com/jkelany/resouces/lib/

بعدها اقوم بكتابه الملف reso.jk والملف install.jk فى المسار الرئيسى لملف الجار

com/jkelany/

وهنا تنتهى المهمه المكلف بها البرنامج Installer API

+++++++++++++++++++++++++++++++++++++++

بعدها تاتى مهمه برنامج الInstaller

يقوم بقراءه بياناته من الملف reso.jk والملف install.jk

الملف reso.jk به اسماء المكتبات

اقوم انا بعمل

listLibStreams = new InputStream[resources.length];
            	for (int i = 0; i < resources.length; i++) {
                	listLibStreams = getClass().getResourceAsStream(LIB_PATH + resources);
            	}

InputStream

لكل ملف على حدا والمكون من مسار المخزن فيه المكتبات وهو LIB_PATH بالاضافه الى اسم المكتبه وهو الذى يأتى من المصفوفه resources

وبعد ذلك اقوم بصنع ملف تحت اسم lib فى مكان التسطيب

String installtionPath = getJarFilePath().getParentFile().getPath();
                    	File libFile = new File(installtionPath + "/lib/");
     	libFile.mkdir();

واقوم بنقل المكتبات من الـ Installer الى هذا المكان

for (int i = 0; i < listLibStreams.length; i++) {
                        	InstallationProcess libProcess =
                                	new InstallationProcess(listLibStreams, libFile, resources);
                        	libProcess.writeInputStreamFile();
     	}

وبكدا تكون المكتبات اتنقلت

وقبلها تم نقل ملف الجار الرئيسى المسئول عن التشغيل

وبس :)

تم تعديل هذه المشاركة بواسطة Mahmoud Kelany في 7 فبراير 2011 في 02:26

Software Developer
Mahmoudkelany.com


 

#14

تقصد أن الجافا لوحدها تفهم أن هذا البرنامج يحتاج هذه المكتبات ليعمل

بمجرد وجود مجلد lib في نفس مكان وجود ملف الـ jar?

هل أصبت؟

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#15
علاء الصالحي كتب:

تقصد أن الجافا لوحدها تفهم أن هذا البرنامج يحتاج هذه المكتبات ليعمل

بمجرد وجود مجلد lib في نفس مكان وجود ملف الـ jar?

هل أصبت؟

تحياتي

اى نعم

انه اذا كان هناك مجلد lib يحتوى على مكتبات والبرنامج يحتاجها فانه يعمل

ولكن اذا كان لا يحتاجها فهو يعمل بدونها حتى لو كان بداخل المجلد lib مكتبات او لا

post-217802-011205200 1297067520_thumb.p

دا كدا الشكل بتلاقى ملف الجار بجواره مجلد lib بداخله مكتبات

هذا ما رايته فى الـ netbeans عندما تذهب الى ملف الـ dist تجد هذا الشكل

هل يختلف مثلا من netbeans الى eclipse ؟؟؟؟

المرفقات
Untitled.png

تم تعديل هذه المشاركة بواسطة Mahmoud Kelany في 7 فبراير 2011 في 11:38

Software Developer
Mahmoudkelany.com


 

#16

محمود لاحظت وجود الملفين LANG_AR و LANG_EN اظن انهم للتبديل بين اللغات

ممكن مثال صغير يوضحلي كيفيه عملهم .

تم تعديل هذه المشاركة بواسطة Ahmed-Ghanem في 8 فبراير 2011 في 14:13

2coscqr.jpg
#17
Ahmed-Ghanem كتب:

محمود لاحظت وجود الملفين LANG_AR و LANG_EN اظن انهم للتبديل بين اللغات

ممكن مثال صغير يوضحلي كيفيه عملهم .

اخى احمد

فى هذه المشاركه تم شرح ذلك

/index.php?showtopic=167926&st=40&p=1052441entry1052441

فان كان هناك صعوبه فى ذلك

فأبلغنى وسأقوم بشرحها لك مره اخرى

1

Software Developer
Mahmoudkelany.com


 

#18
علاء الصالحي كتب:

تقصد أن الجافا لوحدها تفهم أن هذا البرنامج يحتاج هذه المكتبات ليعمل

بمجرد وجود مجلد lib في نفس مكان وجود ملف الـ jar?

هل أصبت؟

تحياتي

لم تجبنى اخى علاء

يعنى هل يختلف اضافه المكتبات فى مجلد تحت اسم lib

مثلا من netbeans الى eclipse او غيرهما ؟؟؟؟

Software Developer
Mahmoudkelany.com


 

#19

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

تم اضافه الـlookAndFeel الى الـمشروعين (8 اشكال )

وتمت بعض التعديلات على الكود

وتنقيه الكود من الاكواد الزائده

وتعديل الـ Uninstall

وتعديل بعض الالفاظ فى اللغه العربيه

واليكم الاصدار 1.7

الاكواد للمشروعين

Java Installer Source 1.7.zip

البرنامج القابل للتشغيل مباشره

JKelany Java Installer Program 1.7.zip

وهذه صوره واحده لكى توضح شكل البرنامج بعد ذلك

post-217802-095619800 1297339995_thumb.p

منتظر تعليقاتكم

ولو فيه اى استفسار جاهز ان شاء الله :)

بالتوفيق :)

المرفقات
Untitled.png

تم تعديل هذه المشاركة بواسطة Mahmoud Kelany في 10 فبراير 2011 في 15:14

Software Developer
Mahmoudkelany.com


 

#20

eclipse يقوم بإضافة المسارات الخاصة بالمكاتب إلى classpath بينما لا أعلم ما يقوم به الأخ Netbeans :)

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#21
علاء الصالحي كتب:

eclipse يقوم بإضافة المسارات الخاصة بالمكاتب إلى classpath بينما لا أعلم ما يقوم به الأخ Netbeans :)

تحياتي

على كدا هاحتاج ان المستخدم يدخل لى نوع الـIDE اللى مبرمج عليه ؟؟؟

وانا اجعل الملف بدلا من lib يكون classpath فى الـeclipse

ام لديك طريقه اخرى ؟؟

والا يوجد طريقه توحد العمل

على اساس ان الكود او ملف الجار واحداً

انتظر ردك

Software Developer
Mahmoudkelany.com


 

#22

Netbeans , eclipse

لا علاقة لهم بعملية التشغيل الفعلي

وإنما JRE هو من يعمل على ذلك

بالنسبة للخطأ الذي حصل لدي لا أعلم ما سبب ذلك

ربما أخطأت عندما أنشأت ملفات الجار

سأقوم بعمل مثال آخر وأعود لك :)

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#23

امال ليه لا تعمل

انا جربت برنامج eclipse ولم يعمل لانه بداخل مجلد lib

طب والعمل ؟؟؟

فيه حل للموضوع دا و لا ايه ؟؟؟

تم تعديل هذه المشاركة بواسطة Mahmoud Kelany في 11 فبراير 2011 في 19:18

Software Developer
Mahmoudkelany.com


 

#24

الملف الذ اعطيتني اياه يعمل بشكل جيد

لكني عندما أردت بناء واحد خاص بي لم يعمل على كل احاول أن أجربه لكني نوعاً ما مشغول في هذه الفترة

لهذا تأخرت عليك

لكني أظن انه لا مشاكل في البرنامج

وأني أخطأت أثناء إنشائي لملفات الجار الخاصة بي

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#25

بالمناسبة تذكرت شيء افتح الملف ذو الامتداد MF

واعرضلي محتواه

أظن أنه قد يكون السبب

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

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