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

مشروع تبادل ملفات على الشبكة بإستخدام

رائج
بدأه rober في 30 يناير 2009 · 92 رد · 13,409 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#26

محاولة أخرى

المثال المرفق يقوم بعرض كل الحواسب التي على الشبكة في listview حصلت على الكود من ملف عندي و قمت ببعض التعديلات (لخبطات) الطفيفة عليه لكني لم أتمكن من إزالة الـ workgroup كما هو ملاحظ في الصورة

post-143282-1233625279_thumb.jpg

حاولت حلها بحذف العنصر رقم 0 في الـ listview :blush:

يمكن إضافة محاولة اللإتصال بالسيرفر لكل عنصر من عناصر الـ list و في حال تم الأتصال معه تكون الأيقونة الخاصة به في الكلينت باللون الأزرق و إلا تكون باللون الأسود

ما رأيكم ؟؟

أرجو أن لا تصابون بالملل من كثرة الأسئلة الغير مجدية :blush: لكني أحاول بكل ما أملك :happy:

Test_NetComBrow.rar

تم تعديل هذه المشاركة بواسطة rober في 3 فبراير 2009 في 05:16

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#27

اخي روبر جرب هذا الكود

 

 

Procedure DelItem[color= #66cc66;](Const FItem:String[color= #66cc66;]);

Var

DelItem:TListItem;

begin

DelItem:[color= #66cc66;]=listview1[color= #66cc66;].FindCaption[color= #66cc66;]([color= #cc66cc;]0[color= #66cc66;],FItem[color= #66cc66;],True[color= #66cc66;],True[color= #66cc66;],False[color= #66cc66;]);

[color= #993333; font-weight: bold;]IF DelItem [color= #66cc66;]<> nil then

listview1[color= #66cc66;].Items[color= #66cc66;].[color= #993333; font-weight: bold;]DELETE[color= #66cc66;](listview1[color= #66cc66;].Items[color= #66cc66;].IndexOf[color= #66cc66;](DelItem[color= #66cc66;])[color= #66cc66;]);

end;

 

procedure TForm1[color= #66cc66;].Button1Click[color= #66cc66;](Sender: TObject[color= #66cc66;]);

begin

DelItem[color= #66cc66;]([color= #ff0000;]'workgroup'[color= #66cc66;]);

end;

تم تعديل هذه المشاركة بواسطة mohfa في 3 فبراير 2009 في 05:57

عزيزي :

لاتنسى ان تصلي على حبيبنا و شفيعنا يوم لا ينفع مال ولا بنون .

فاللهمّ صّل وسّلم على سيدي و شفيعي وحبيبي محمد عليك الف صلاة وازكى تسليم

*****

2_header.png

#28

السلام عليكم

أخي محمد المشكلة أن الـ workgrop غير ثابتة أي يمكن أن تأخذ أسماء أخرى و هي غير ثابتة يمكن أن تكون شبكة بدومين أو تكون مجموعة عادية مثل mshome فهل من طرقة أخرى ؟؟

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

بارك الله فيك

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#29

اخي روبر انا اظن ان المثال جيد حسب رائ لكن مازلت بعض التنقيحات .

عزيزي :

لاتنسى ان تصلي على حبيبنا و شفيعنا يوم لا ينفع مال ولا بنون .

فاللهمّ صّل وسّلم على سيدي و شفيعي وحبيبي محمد عليك الف صلاة وازكى تسليم

*****

2_header.png

#30

اخي روبر لا تنسى Items.Beginupdate و ال Items.Endupdate

ظف على ذلك Application.processmessages او يمكن تفادي كل هذه بإستعمال ال Threads لكي لايقع Freez للجهاز خاصة إذا كانت الشبكة كبيرة .

وانا من رائ ان تستعمل ال Threads مع بعض ال ال OS Messages .

عزيزي :

لاتنسى ان تصلي على حبيبنا و شفيعنا يوم لا ينفع مال ولا بنون .

فاللهمّ صّل وسّلم على سيدي و شفيعي وحبيبي محمد عليك الف صلاة وازكى تسليم

*****

2_header.png

#31
اقتباس
أخي محمد المشكلة أن الـ workgrop غير ثابتة أي يمكن أن تأخذ أسماء أخرى و هي غير ثابتة يمكن أن تكون شبكة بدومين أو تكون مجموعة عادية مثل mshome فهل من طرقة أخرى ؟؟

ممكن نعمل مثل ماهو موضح في الصورة المرفقة

post-169104-1233680553_thumb.jpg

إعجاب الإنسان بنفسه دليل على صغر عقله

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

رأس الحكمة مخافة الله

#32

السلام عليكم

mohfa كتب:
لكن مازلت بعض التنقيحات .

بالتأكيد التنقيحات ضرورية و أكيدة

mohfa كتب:
اخي روبر لا تنسى Items.Beginupdate و ال Items.Endupdate

ظف على ذلك Application.processmessages او يمكن تفادي كل هذه بإستعمال ال Threads لكي لايقع Freez للجهاز خاصة إذا كانت الشبكة كبيرة .

وانا من رائ ان تستعمل ال Threads مع بعض ال ال OS Messages .

أنت تأمر أخ محمد سأعمل عل الـ theard بإذن الله فهي ما ينصح به الأغلب

لكن لم أعرف ماذا تقصد بـ items.beginupdate و items.endupdate :blush:

ألف مبروك على صدور أول نسخة من المضاد :wink:

maosalah كتب:
ممكن نعمل مثل ماهو موضح في الصورة المرفقة

أخي maosalah أرجو منك التوضيح أكثر

سأغيب حتى يوم الجمعة إن شاء الله لأن زفاف أخي يوم الخميس (عأبال الأخوة الغير متزوجين و فرحة المتزوجين بزفاف أبنائهم) :wink:

لا أحد يكمل دون أن أكون موجود :angry: :lol:

دمتم في رعاية الله

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#33
اقتباس
لكن لم أعرف ماذا تقصد بـ items.beginupdate و items.endupdate

ListView1.Items.BeginUpdate;

ListView1.Items.EndUpdate;

اقتباس
ألف مبروك على صدور أول نسخة من المضاد

اخي روبر يجب ان تجربه وانت تدي لماذا - .... احببت ام كرهت ... - تتذكر الرسالة الخاصة

اقتباس
سأغيب حتى يوم الجمعة إن شاء الله لأن زفاف أخي يوم الخميس (عأبال الأخوة الغير متزوجين و فرحة المتزوجين بزفاف أبنائهم) :wink:

لا أحد يكمل دون أن أكون موجود

لاتنسى الحلويات وإلا سوف يتوقف المشروع :D

تم تعديل هذه المشاركة بواسطة mohfa في 4 فبراير 2009 في 02:38

عزيزي :

لاتنسى ان تصلي على حبيبنا و شفيعنا يوم لا ينفع مال ولا بنون .

فاللهمّ صّل وسّلم على سيدي و شفيعي وحبيبي محمد عليك الف صلاة وازكى تسليم

*****

2_header.png

#34

السلام عليكم

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

تعديل بسيط على طريقة الحصول على أسماء الحواسب على الشبكة

تم التعديل للحصول على أسماء الحواسب دون وجود "\\" و حذف أسماء المجموعات (workgroup - mshome...)

سنكمل من هنا بعون الله

Test_NetComBrow.rar

تم تعديل هذه المشاركة بواسطة rober في 11 فبراير 2009 في 14:27

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#35

السلام عليكم

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

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#36

ربما وصلت متاخرة لكن ليس كثيرا لكن اريد طرح سؤال في حالة ما اذا كان لدينا شبكة مكونة من 3 اجهزة+ سيرفر

و اردنا استعمال

sockets

هل سنثبت برنامج السيرفر في السيرفلر و برنامج كلينت في الاجهزة الثلاثة و يتم الاتصال بينها ام ماذا

لدي فقط سورس يمكن ان يساعدكم

http://delphipage.free.fr/sockets.html

لا اله الا انت سبحانك اني كنت من الظالمين

#37

اين وصلت الامور هنا اخ rober واعتذر لعدم مشاركتي معكم لاني ساكرس كل وقتي في الدلفي بريسم .

بالتوفيق.

#38

أخي زكري المشروع لم يتوقف و لن يتوقف بإذن الله

وصلت لمرحلة إظهار تقدم النسخ في Progressbar بإذن الله حلت المشكلة

لكن هناك بطء في عملية النسخ جربت نسخ ملف بحجم 350م بشكل أعتيادي وتم نقل الملف بحوالي دقيقة لكن في المشروع كان الوقت 2.5 دقيقة

بإذن الله سأقوم بتنسيق الكود و إرفاقه في اليومين القادمين

بالنسبة لعدم مشاركتك فأنت معذور لأنك ماشاء الله متابع مع كل المشاريع

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#39

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

#40

بعد أن فتحت الموضوع سابقا لعمل مشروع يقوم بإرسال الملفات على الشبكة و تركي للموضوع لأسباب شخصية

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

سيكون هناك بعض التغيير في المشروع أي سيكون المشروع لعمل مشاركة على الشبكة و ليس إرسال ملف(ات)

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

ستكون فكرة البداية من الصفر صعبة على من لديهم خبرة في هذا المجال لكن نريد أيصال الفكرة بشكل مبسط و واضح للمبتدئين مثلي فهناك بعض الأكواد التي لم أفهمها :blush:

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

كفكرة مبدأية للمشروع :

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

يقوم الطرف الثاني بالأتصال بالطرف الأول لرؤية الملفات المشاركة و أختيار الملف المطلوب و تحميله

الخطوة الأولى : الشكل

أقترح أن يكون الشكل كما هو موضح في الصورة الأولى و الثانية في الأسفل

أي سنستخدم الأداة Page Control التي تتألف من عنصرين Tab Sheet

في الـ Tab Sheet الأول سنضع label و edit و ثلاث أزرار Button و StringGrid

في الـ Tab Sheet الثاني سنضع زرين Button و StringGridل

و سنستخدم العنصر StatusBar لعرض الأحداث

ستتكون الـ StringGrid الأولى من 5 أعمدة و صفين

ستتكون الـ StringGrid الثانية من عامودين و صفين

ستكون العناصر متوضعة على الشكل التالي

post-143282-1245845898_thumb.jpg

post-143282-1245846041_thumb.jpg

بإنتظار أرائكم و أقتراحاتكم لننهي الخطوة الأولى و ننتقل للخطوة الثانية

رجاء خاص لا تجعل مشاركتك شكر و أمتنان فقط

أجعلها ذات فائدة بسؤال أو أقتراح أو نقد :blush:

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#41

مرحبا اخي rober مشكور على هذه العزيمة و الاصلال للو صول الى النجاح .

اما

اقتباس
لعمل مشاركة على الشبكة و ليس إرسال ملف(ات)

اي ان المشروع تغير هدفه و بالتالي ستتغير طريقه برمجته ولذلك اقترح ان تضعه في موضوع جديد واسم جديد كما اخبرتني سابقا

عذا لم افهم الرسالة بالتفصيل .

اي ندع هذا المشروع للذين يردون عمل تبادل ملفات على الشبكة

ونبدأ في مشروع جديد اسمه مشاركة XXX على الشبكة

لكن هل XXX ماهي ان كانت ليست ملفات .

شكرا

#42

أخي زكيري كان المشروع سابقا على الشكل التالي

في حال كان الطرف الثاني (المستقبل) يريد ملف من الطرف الأول (المرسل) فهو لايستطيع ذلك حتى يقوم الطرف الأول بإرسال الملف

لكن في الوضع الجديد

يقوم الطرف الأول بإضافة الملفات التي يريد وضعها على الشبكة

و يقوم الطرف الثاني بالإتصال بالطرف الأول و رؤية الملفات المشاركة و أختيار ما يريده منها

للأسف المشروع فقط لمشاركة الملفات أي لايمكن مشاركة مجلد أوقرص كامل لأني لا أملك الخبرة الكافية بالموضوع لكنها ستكون تطويرة للمشروع في المستقبل بإذن الله

سأقوم بنقل الموضوع إلى موضوع جديد بعنوان

(مشروع مشاركة ملفات على الشبكة) بدلا من (مشروع تبادل ملفات على الشبكة)

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#43

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

:cry:

#44

ياششباب ممكن الملف تنفيذي لو سمحتوا

الفكرة الصح

تحديد مكان ملف تلاقائي والارسال بشكل مستمر

اتمنى ان احصل على هذه الاداة

اي جعل السيرفر المرسل

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

وهو بدوره يقوم بارساله بشكل مستمر دون توقف

او تحديد وقت للارسال وبعدها يتوقف

وانشاء شيء مشفر للمتلقي

بحيث لا احد يتلقى سوى هذا الملف

كلمة سر مثلا او كود

وشكرا انا بنتظار الابطال

فعلا مشروع رائع

وانا كنت محتاج هذا البرنامج وكنت ابحث عنه وبالصدفة وجد ابطال عرب

بارك الله فيكم وبجهودكم

#45

مشروع تبادل ملفات على الشبكة بإستخدام Server,client Socket

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

السلام عليكم

أعضاء منتدى الفريق العربي للبرمجة ما رأيكم

في مشروع برنامج مشاركة ملفات

لدي تصور للمشروع...

و يمكن التعاون لاتمامه

في انتضار رأي الأعضاء الكرام

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

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 10 أغسطس 2011 في 16:00

2
#46

السلام عليكم

أولا تصوري للمشروع.

ثانيا تصوري للعمل الجماعي.

تصوري للمشروع

- يكون على جميع الأجهزة Clients.

- نحتاج الى عمل Web Service.

إذا برنامجين Web Service و Clients.

نظام مشاركة الملفات.

1-عند تنصيب الـ Clients يتم إنشاء مجلد جديد بإسم Shared (أو أي إسم آخر).

2- توضع جميع الملفات المراد مشاركتها في المجلد Shared.

3- يتم قراءة عناوين الملفات الموجودة داخل المجلد Shared يتم تحويلها الى ملف XML.

4- يتم ارسال ملف الـ XML الى Web Service.

5- يتم قراءة ملف XML من خلال الـ Web Service.

6- يتم إستخلاص البيانات من ملف الـ XML و يتم تسجيلها في قاعدة البيانات.

7-عندما يريد Client البحث عن ملف يتم البحث في الـ Web Service.

8- يتم تحويل الناتج الى ملف XML.

9- إرسال XML الى الـ Client.

10- قراءة معلومات تواجد الملف من ملف الـ xml.

11- أخيرا يتم الإرسال على شكل اتصال per to per من Client الى Client.

الخطوات تبدو بسيطة لكن يجب الأخذ في الحسبان أن في كل خطوة مئات الخطوات التي

يجب أن تنجز كما أن مثل هذه المشاريع تستخدم تقنيات على الاقل حديثة بالنسبة لنا

عمل و جهد كبير

في انتضارنا اذا اردتم الاستمرار في المشروع و كسر الروتين اليومي

في المنتدى

ملاحظة : في انتضار رأي الاعضاء الكرام لان تصوري بالتأكيد فيه بعض النقص.

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

#47

السلام عليكم

المشاركة للجميع بارك الله فيكم

أعتذر اختيار شكل الموضوع ليس [نقاش] و انما [مشروع]

اذا امكن من اي مشرف تعديل الموضوع

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

تم تعديل هذه المشاركة بواسطة M.Abdelhak في 27 يونيو 2011 في 12:15

#48

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

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

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

تحياتي

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#49

السلام عليكم

بارك الله فيك أخي prof_1982

نعم طرحت الفكرة لكن ان شاء الله مشروعنا سيكون الاستثناء ما رأيك!

هل أنت معنا ؟؟؟

بالنسبة للـ Socket لن يتم إستخدامها إلا في الخطوة رقم 11 و هي آخر خطوة أي إرسال الملف من الـ Client للـ Client لذلك لنأجلها الى ذلك الحين لكن ليس بالضرورة

إستخدام الـ Socket يمكننا إستخدام مكونات الـ indy أو أي مكونات أخرى تفي بالغرض.

prof_1982 سأقوم بشرح الذي فهمته بطريقة أكثر إيضاحا مدعمة بالصور.

المشاكل

لدينا نقص حاد في الأعضاء المشاركين...

لدينا نقص حاد في الأفكار...

عندما يكون هناك الحد الأدنى للمشاركين و هو 2 (أرجو ان تكون الجماعة كبيرة ان شاء الله )سنبدأ بالعمل إن شاء الله ( بعد مناقشة الأفكار و سبل العمل و غيرها )

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

#50

اخي العزيز اعتبرني من المشاركين الفعليين في المشروع ويكفي المشروع شخصين للبدء به ومع مرور الوقت و روئية الانجازات سيتشجع الاخرون للمشاركة وطرح الافكار .

لنبدأ بتحديد ادوات العمل مبدئيأ :

1- لغة البرمجة المستخدمة / بالطبع دلفي :) 2010 او 7 حتي نوحد الكود .

2- اداة الاتصال ClientSocket , ServerSocket الاصدار المتوفر مع دلفي 7 وهو موجود في دلفي 2010 ايضا .

تحياتي

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

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

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

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

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

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