المساعد الشخصي الرقمي

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



wellknownQ8
04-02-2006, 01:02 AM
السلام عليكم و رحمة الله و بركاته

بين أيديكم (أمام ناظركم) شرح (من البداية) لعمل مشروع بسيط لبرنامج كامل و مفيد للويندوز باستخدام السكريبت و البرنامج (Autoit Script)
بالإضافة إلى أنني سأجعله مفتوح المصدر .. لمن يريد أن يعدل عليه أو إضافة مهام جديدة..

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

==============
اسم البرنامج: مشغل الملفات (اسم أولي :أفكر: )

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

المتطلبات اللازمة:
1- تقريبا أي كمبيوتر به نظام ويندوز (من 98 فما فوق :) )
2- برنامج autoit3 (http://www.autoitscript.com/autoit3/downloads.php)مع برنامج SciTE (http://www.autoitscript.com/autoit3/scite/downloads.php)(اضغط على الكلمة للتحميل)
3- معرفة مبادئ البرمجة مثل الLoops و الIf Conditions و الData types مثل الintegers و الstrings و استخدام الوظائف Functions or Methods

ملاحظة مهمة:
أهم شيء في البرمجة هي الفكرة و كيفية تطبيقها و استخدام الخوارزميات.... و ليس كتابة البرنامج مباشرة يإحدى اللغات !


في البداية يجب معرفة خطوات عمل برنامج ما... و هي كالتالي:

1- كتابة الفكرة (و ليس بشرط أن تتضمن التفاصيل .. يكفي الفكرة العامة)
2- تحديد المدخلات و المخرجات (و تحديد كيفية الاستخدام)
3- رسم سريع لشكل البرنامج (GUI)
4- وضع الاسئلة المحيرة الداعمة للبرنامج التي لابد من إجابتها.
5- كتابة الملاحظات.
6- وضع خطة العمل.
7- البدء بالبرمجة ==> لاحظوا البرمجة (الCODING) يأتي متأخرا جدا !
8- الإضافات و المقترحات.

wellknownQ8
04-02-2006, 01:09 AM
============== و الآن التطبيق ================

1- كتابة الفكرة:
فكرة هذا المشروع عبارة عن برنامج للويندوز .. مهمته التحكم و تحديد البرامج التي يريدها المستخدم ان تعمل بعد أن يتم تسجيل الدخول للنظام..

2- تحديد المدخلات و المخرجات (تحديد كيفية الاستخدام)
أ- المدخلات - Inputs
- إظهار ملفات البدء الحالية
- إضافة ملف
- حذف ملف ==> نعم الحذف من المدخلات لانه يعتمد على "أمر" حذف .. و الذي يدخله المستخدم

ب- المخرجات - Outputs
- تشغيل البرامج المضافة

3- البرنامج سيكون شكله كهذا
245902

4- أسئلة مثل:
- كيف و متى سيبدأ البرنامج ؟ الجواب => بطريقة اعتيادية أو يكون في الsystem tray (عند الساعة)
- اية ملفات يجب أن تظهر .. ملفات هذا المستخدم أم الجميع أم مستخدم معين يتم تحديده ؟ => ملفات المستخدم الحالي (مؤقتا على الأقل)
- ما الملفات التي من الممكن إضافتها في البرنامج؟ => جميع الملفات !

5- الملاحظات:
- امكانية وضع drag and drop *
- عمل نسخ احتياطية للملفات الموجودة *
*ستتوضح امكانية تطبيقهم لاحقا.

6- الخطة:
0- رسم الواجهة الرسومية.
1- اخذ الملفات من الStart-up.
2- ثم وضعها فيList.
3- إضافة ملفات جديدة.
4- تشغيل ملف محدد.
5- حذف ملف محدد.

7- البدء بكتابة الكود على حسب الخطة. ( يفضل كتابة الخوارزمية قبلها !)

8- الإضافات و المقترحات:
- إضافة خاصية تشغيل ملف(او برنامج) في وقت محدد من اليوم ==> يعني باختصار مهام ال"Schedule task manager"
- إظهار أيقونة الملف(أو البرنامج)
- تطبيق الDrag and drop

================================
ملاحظة أخرى:
- هناك الكثير من الوظائف(Built-in Functions) في الautoit لم أشرحها، لاعتمادي على شروحات الشركة الممتازة جدا => اضغط هنا (http://www.autoitscript.com/autoit3/docs) للDocumentation و بالذات هنا للFunctions (http://www.autoitscript.com/autoit3/docs/functions.htm)
- يفضل طباعة الFunctions و الMacros من موقع الشركة .. فالاحتياج لها Definitely is a must !

wellknownQ8
04-02-2006, 01:17 AM
========= المصدر - Code ==========

الملفان في المرفقات .. ملف المصدر .. و ملف التشغيل .. و بالنسبة لملف المصدر .. اعد تسميته إلى .au3

====================

الحقوق للجميع لكن بشرط ذكر المصدر http://ksg.no-ip.com (http://ksg.no-ip.com/) (Well-knownQ8) أو وصلة هذا الموضوع في "منتدى المنتدى"

طبعا .. إن كانت هناك أية أسئلة أو استفسارات .. فلا تترددوا بالبوح بها ... :)

أتمنى لكم دوام التوفيق :)... و إلى اللقاء .

The Coder
04-02-2006, 06:26 AM
الله ...
الله واكبر
لا لا لا ...
مو معقول ..
انت غييييييييييييييييير !!
ماشاء الله عليك
جزيت الف الف الف خير
والله يوفقك
وشغل متعوب عليه ...
موفق يا خوي ....
ادعيلك والله ... انسان يحب الخير ^^
وجميع الحقوق محفوظة لك يا غالي ....
^^ استأذن .....

suman
04-02-2006, 11:17 AM
ماشاء الله عليك والله إنك نعمه على العالم الإسلامي

إن شاء الله للأمام دائماً

AZPC
04-02-2006, 12:52 PM
شكرا جزيلا (:

حقا بدأت اتخذ سياسة لينكس انا ايضا ،، فقط نظرا لانشغالاتي لم اقم بوضع المشاريع كما انني مازلت مترددا D:

سلاموز

Digerati
04-02-2006, 02:24 PM
السلام عليكم و رحمة الله و بركاته

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

شكرا أخي الكريم و يعطيك ألف ألف عافية ^_^

فعلا أنت مجتهد و تستحق الأفضل و هذا ما أتمناه لك..

ربي يوفقك..

من التراب
04-02-2006, 03:58 PM
ماشاء الله عليك ..... ^_^

أنا في بداية الطريق كمبرمج .... ودايمًا البداية صعبة ..@_@... ** ادعولي ...T-T **

وعجبتني روحك الأخويه ..... وأنته قدوتيه ....وإن شاء الله أقدر أقدم كل فايدة للجميع في هذا المنتدى ... مثلك ..

والله يوفقك لكل خير .....وإلى الأمام .... ^_^

wellknownQ8
05-02-2006, 01:37 AM
الله ...
الله واكبر
مو معقول ..
ماشاء الله عليك
جزيت الف الف الف خير
والله يوفقك
:shysmile: تسلملي يا حمزة ..
أشكرك جزيل الشكر على تشجيعك و دعمك المعنوي الكبير .. جزاك الله خير ...

و الله يوفقك دنيا و آخرة و يبارك فيك :biggthump

--------------

حبيب يا سومان .. :) أشكرك و أقدرلك حضورك العذب ..
و ياريت لو نشوفك في منتديات البرمجة :)

--------------

عفوا كثيرا :)
حياك الله يا عبدالكريم ..
و زين سويت .. لأن التطور و الإبداع و الإبتكار هم نتاج سياسة لينكس

و بالنسبة للتردد .. فهذا ان شاء الله مؤشر خير (يعني عن قريب جدا راح نشوف فضايحك .. قصدي برامجك :09: ..)
لا ... بجد ... لا تستهين بأي برنامج قمت به ... فيكفي انه من عملك أنت .. و لا تدري .. قد تكون أفكارك و برامجك هي الوحيدة و الفريدة .. و بذلك تكون صاحب ابتكار جديد .. ;)

.. و ان شاء الله نرى منك كل جميل و مفيد .. :)

--------------

السلام عليكم و رحمة الله و بركاته
ماشاءالله عليك أخي.. مشروع و بادرة جيدة منك و خصوصا أنه مصدر مفتوح ^^
شكرا أخي الكريم و يعطيك ألف ألف عافية ^_^
فعلا أنت مجتهد و تستحق الأفضل و هذا ما أتمناه لك..
ربي يوفقك.. و عليكم السلام و رحمة الله و بركاته
بارك الله فيك أخوي الحبيب ديجراتي ... أشكرك على تواصلك الدائم ..
جزاك الله كل خير :)

--------------

:) .. منور يا "من التراب" :)
و بما انك في البداية .. فان شاء الله يفيدك هذا البرنامج أو غيره من البرامج المفتوحة المصدر ...
و بالرغم من ان الطريق صعب .. لكن يتخلله الكثير من التحدي و الإنجاز و من ثم الثقة و الرضى ..
و ان شاء الله نشوفك مبرمج كبير و مهم و نافع للجميع ان شاء الله..


وعجبتني روحك الأخويه ..... وأنته قدوتيه ....وإن شاء الله أقدر أقدم كل فايدة للجميع في هذا المنتدى ... مثلك .. الله يسامحك :shysmile: ... شالكلام :shysmile:.... أنا ادري انك تجامل ...:أفكر:

فأشكرك على التشجيع بطريقة غير مباشرة .. ^_^

بارك الله فيك و شرفت الموضوع :)

amawi
07-02-2006, 06:55 PM
مشكور اخوي

فعلا جهد متعوب عليه

وانت رائع

فاذا كان بعضنا

يصنع البرامج فانت تصنعها وتشرحها

فانت الفائدة الحقة

اخي انت رائع حقا

والله ليست مجاملة

انني احترمك واحبك كاخ وصديق

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

اخوك

wellknownQ8
11-02-2006, 11:08 AM
السلام عليكم

مشاركتي هذه هي للتطوير ..
و ما أردت تطويره هو إضافة الSchedules Tasks (لمن لا يعرفه إذهب إلى Start -> Programs -> Accessories -> System Tools -> Scheduled Tasks)

========== التطبيق ============
نرجع و نأخذ الخطوة رقم 6 (الخطة) و نزيد النقاط التالية:
6- تغيير و تجهيز الواجهة الجديدة
7- عرض المهام الحالية
8- إضافة مهمة جديدة
9- حذف مهمة محددة.
10- تغيير مهمة.
11- إنهاء مهمة محددة.
-----------

*و قد انتهيت من النقاط 6 و 7 و 9، و جاري تعديل 8 (و توقعوا قريبا ان شاء الله سأضع النسخة المعدلة)

إلى ذلك الحين .. تفضلوا الصورة و المصدر (في المرفقات(و لا تنسوا إعادة تسميته إلى .au3) )
246882
ملاحظة: التطوير الجديد يلزمه Autoit Beta Version 3.1.1.99 أو أحدث للتحميل إضغط هنا (http://www.autoitscript.com/autoit3/files/beta/autoit/)

ملاحظة أخرى:
المصدر به بعض الشروحات و أيضا به إيضاح للخطوات السابقة ;)

بانتظار أسئلتكم .. و الله الموفق :)

wellknownQ8
11-02-2006, 12:00 PM
مشكور اخوي
فعلا جهد متعوب عليه
وانت رائع
فاذا كان بعضنا
يصنع البرامج فانت تصنعها وتشرحها
فانت الفائدة الحقة
اخي انت رائع حقا
والله ليست مجاملة
انني احترمك واحبك كاخ وصديق
اتمنى لك التوفيق في جميع امرك
اخوك :08: تكفه .. شنو هالكلام .:08: ... هذا إطراء لا أستحقه أخي الكريم عيسى

على العموم .. أشكرك على شعورك الطيب .. بارك الله فيك
و أحبك الله الذي أحببتني فيه :)

و لا تقاطع ;)

Argonaut
12-02-2006, 01:32 AM
بسم الله الرحمن الرحيم

السلام عليكم والرحمة
(:................. ان شاء الله اكون تلميذك المطيع
بارك الله بك يا حسين
وشكرا"
(:

wellknownQ8
13-02-2006, 10:27 AM
و عليكم السلام و رحمة الله و بركاته
شرفتنا بحضورك الكريم مراقبنا الحبيب حسام :)

و أنت لست بتلميذ بل استاذ قدير في البرمجة .. و نود أن نكون تلاميذك ;)
و ان شاء الله يفيدكم موضوعي المتواضع ..

و بالتوفيق :)

M.A.F.
18-02-2006, 04:28 PM
مشكور أخي .. حقا ً مجود لا يمكن ان اقول عنه غير انه جبار ...

wellknownQ8
18-02-2006, 11:32 PM
مشكور أخي .. حقا ً مجود لا يمكن ان اقول عنه غير انه جبار ... العفو .. و بارك الله فيك اخي الكريم .. و اهلا و سهلا بك معنا ^_^

---------------------

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

و هي اني لم أتمكن من إضافة مهمة جديدة باستخدام الautoit .. لكني الحمدلله حللتها عن طريق
Move around ;) => اي باستخدام الويندوز سكريبت ..
التفاصيل .. قريبا جدا ;)

ترقبونا

و لا تنسون من دعائكم لنا بالتوفيق .. :)

wellknownQ8
22-02-2006, 10:52 AM
السلام عليكم

عدنا من جديد ^_^

نكمل علطول ...

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

سيناريو 1
تشغيل برنامج الnotepad كل يوم ما عدا السبت، في الساعة ال11:00 صباحا.

سيناريو 2
تشغيل برنامج "مضاد الفيروسات" كل جمعة الساعة 12:00 ظهرا، و يستمر هذا حتى العاشر من يونيو 2006.

و بتفصيل ما سبق نجد التالي:
1- يلزمنا إضافة خانة بدء الوقت
2- يلزمنا الإختيار ما بين إن كان الملف سيعمل لمرة واحدة بتاريخ معين أم مرة كل أسبوع .. أم في أيام محددة
و بالتالي:
يكون هناك خيارين Radio Button الأول لتحديد التشغيل لمرة واحدة، و الآخر لتحديد الأيام.
3- في كلتا الحالتين نحتاج إلى خانة إنتهاء التشغيل

و سيكون مظهر النافذة كهذا:

248105

الملخص:
إذاً الخطوة رقم 8 تجزأت إلى قسمين

- الأول
تصميم الواجهة حسب المتطلبات
- الثاني
الكود اللازم لأخذ المعلومات و إرسالها لملف windows script لانشاء مهمة محددة


على فكرة القسم الثاني يعتبر أعقد خطوة في البرنامج حتى الآن .. و أنا مستعد للشرح للمهتمين ;) أو تنتظرون حتى أنتهي منها :أفكر:
----------
ملف المصدر في المرفقات، مع ملاحظة أنني لم أنتهي من النقطة 8 حتى الآن !

دعواتكم ^_^

wellknownQ8
26-02-2006, 11:19 PM
السلام عليكم

الحمدلله انتهيت من النقطة رقم 8 - Add New Task
و ما تبقى هو رؤية النتائج :)

و سأؤجل النقطتين 10 و 11 .. و احتمال كبير اني احذفهما .. نظرا لغرابة طريقة الويندوز في التحكم بهما (هذا إن كانت هناك طريقة لعمل ذلك!)

و إن شاء الله القادم .. سيكون بإضافة tab جديد لوضع فيه البرامج المفضلة .. و هو امر سهل ان شاء الله..

إلى ذلك الحين أقدم لكم الإصدارة 0.3.8 بملف التشغيل و بالطبع المصدر..

و السلام :)

wellknownQ8
27-02-2006, 05:23 PM
السلام عليكم :)

في هذه الإصدارة سنضيف ميزة جديدة و خفيفة، و هي عبارة عن Tab به Favorite Programs
اي البرامج المفضلة و التي يشغلها المستخدم باستمرار، بدلا من التيهان في وسط الshortcuts في الdesktop أو إضاعة الوقت لإيجاد البرنامج في Start -> Programs

يعني باختصار، ستتضمن 3 عمليات إضافة و حذف و تشغيل

و طبعا بما انها ميزة إضافية .. فيجب علينا كتابة خطوات العمل اللازمة ..
لكن، قبل ان نبدأ .. يجب أن نسأل هذا السؤال ..
كيف و أين سيتم حفظ الإختصارات !؟
هناك حل مشهور و بسيط .. و هو أن نضعهم في text file
فإن كان غير موجود ستم إنشاء ملف جديد .. و إلا سيتم إضافة سطر جديد للملف الموجود..

و الآن، الخطوات:
12- تعديل الواجهة (إضافة الTab الجديد)
13- عمل ملف text لاضافة الprograms pathes
14- إضافة إختصار (shortcut) لبرنامج
15- عرض البرامج كـList
16- حذف إختصار لبرنامج.
17- تشغيل برنامج

ملاحظة :
المصدر به بعض الشروحات و التوضيحات للخطوات السابقة.

بانتظار تجربتكم و أسئلتكم و مقترحاتكم و تقارير الأخطاء :vereymad: ..

و الله الموفق :)

الحبيب لمين
26-05-2006, 10:50 AM
السلام عليكم

بارك الله فيك على هذا الشرح الوافي

alsukaiti
06-06-2006, 06:04 AM
السلام عليكم و رحمة الله و بركاته


بين أيديكم (أمام ناظركم) شرح (من البداية) لعمل مشروع بسيط لبرنامج كامل و مفيد للويندوز باستخدام السكريبت و البرنامج (Autoit Script)
بالإضافة إلى أنني سأجعله مفتوح المصدر .. لمن يريد أن يعدل عليه أو إضافة مهام جديدة..

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

==============
اسم البرنامج: مشغل الملفات (اسم أولي :أفكر: )

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

المتطلبات اللازمة:
1- تقريبا أي كمبيوتر به نظام ويندوز (من 98 فما فوق :) )
2- برنامج autoit3 (http://www.autoitscript.com/autoit3/downloads.php)مع برنامج SciTE (http://www.autoitscript.com/autoit3/scite/downloads.php)(اضغط على الكلمة للتحميل)
3- معرفة مبادئ البرمجة مثل الLoops و الIf Conditions و الData types مثل الintegers و الstrings و استخدام الوظائف Functions or Methods

ملاحظة مهمة:
أهم شيء في البرمجة هي الفكرة و كيفية تطبيقها و استخدام الخوارزميات.... و ليس كتابة البرنامج مباشرة يإحدى اللغات !


في البداية يجب معرفة خطوات عمل برنامج ما... و هي كالتالي:

1- كتابة الفكرة (و ليس بشرط أن تتضمن التفاصيل .. يكفي الفكرة العامة)
2- تحديد المدخلات و المخرجات (و تحديد كيفية الاستخدام)
3- رسم سريع لشكل البرنامج (GUI)
4- وضع الاسئلة المحيرة الداعمة للبرنامج التي لابد من إجابتها.
5- كتابة الملاحظات.
6- وضع خطة العمل.
7- البدء بالبرمجة ==> لاحظوا البرمجة (الCODING) يأتي متأخرا جدا !
8- الإضافات و المقترحات.



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