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

مشاهدة النسخة كاملة : كيفية عمل ماسنجر شخصي



Fantasy-Reality
09-03-2006, 03:49 PM
بسم الله الرحمن الرحيم



طبعاً أنا اليوم بدي أعطيكم درس راااااااائع جداً وبنفس الوقت سهل جداً ...

بس الأمر محتاج شوية إنتباه ...



طبعاً أول شي اللوازم ...:::...
1- برنامج الفيجوال بيسك 6 VB6
2- أن تكون على علم بالفيجوال بيسك و أدواته
3- أن لا تكون مبتدأ فيجوال بيسك يعني تكون متوسط في البرنامج
4- وما تكون بتحب النسخ واللصق بس


ملاحظة هامة :: أنا بنصح الجميع إنهم ما يحاولوا النسخ و اللصق بس
كتير منكم بس بنسخ الأكواد و بلصقها وبقول أنا عملت برنامج ...
في الحقيقة هو ما بكون عمل برنامج ولا شي , هو عمل عمل أي طفل بعمله
يعني لو أي واحد بعرف حاجات قليلة على الكمبيوتر يقدر يعمل مثله ...


وبتمنى يا شباب ما حد ينقل الموضوع إلا بعد ما يحط الحقوق
لإنه الموضوع تعبني كتيير ...


جميع الحقوق محفوظة لTHE_MAN ©
THE_MAN_MTM@hotmail.com

_________________________________________________________________THE_MAN --------->THE_MAN_MTM@hotmail.com
_________________________________________________________________




--((العميل))--


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

نبدأ باسم الله ...


أنا رح أبدأ أول شي بالعميل ...

أول شي كائنات العميل ....

مثل الصورة ...


http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image001.gif

طبعاً عارفين من وين بنجيب الأدوات ..

أما الوينسوك فهادي بنجيبها بنكبس على Ctrl + T

بتظهر قائمة بنختارها منها ولو مش موجودة بالقئمة بنكبس Browse

بنلاقيها بمجلد System32

هيك كل شي تمام الحمدلله ...

الآن لازم نضبط خصائص الكائنات ....

أول شي مربعين النص نختارهم ونحط الخاصية
Alignment = Center

لتوسيط النص في مربع النص ...

مثل الصورة هادي ...

http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image002.gif



الآن خصائص مربعين النص للرسائل المرسلة و المستقبلة لازم يكونوا نقدر نضيفلهم

شريط تمرير .. علشان كده بنعمل مثل الصورة

http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image003.gif

وكمان المربع إللي فوق لازم نعملله خاصية Lock = True

علشان ما حد يقدر يمسح او يضيف فيه ...

الآن بدنا نغير التسميات إللي بتظهر للمستخدم ..

لتغيير الاسماء ل Labels من الخاصية Caption


http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image004.gif




لتغيير الاسماء ل Frames من الخاصية Caption



http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image005.gif




لتغير الاسماء لTextBoxes من الخاصية Text



http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image006.gif


لتغيير الاسماء ل CommandBottons من الخاصية Caption


http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image007.gif



الآن غيروا التسميات مثل الصورة هادي ....


http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image008.gif



طبعاً كله سهل للآن الحمدلله ......




نسيت أقوللكم تغيير خصائص ال Form

غيروا مثل الصورة ...

http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image009.gif


.............................................................................................
__________________________________________________________

الآن لازم نغير الاسم البرمجي للكائنات ...

الاسم البرمجي لا يظهر للمستخدمين ...

لتغيير الاسم البرمجي من الخاصية Name



مثل الصورة


http://members.lycos.co.uk/msnman/VB6/LFiles/7_files/image010.gif



وغيروا التسميات مثل كده ...
علشان الأكواد تكون صحيحة وشغالة 100% ....




مربع الآي بي
txtIP

مربع البورت
txtPort

زر الإتصال
CmdConnect

زر قطع الإتصال
CmdDisC

زر الإرسال
CmdSend

مربع نص الرسائل المستلمة والورادة
txtList

مربع نص الرسائل التي سوف ترسل
txtMsg

ليبل الحالة غير متصل
IPstat

أداة الوينسوك
WskClient

مربع نص الاسم
txtName




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


الآن إنتهينا من كائنات العميل ...
_______________________________________________________________
------------------------------------------------------------------------------------------------------------------
_______________________________________________________________


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

نبدأ بالأكواد ....




_________________________________________________


أول شي كود زر الإتصال ...




If WskClient.State <> 7 Then 'جملة شرطية تعني أنه إذا كانت حالة الوينسوك غير متصلة
WskClient.Close 'قطع الإتصالات القائمة بالوينسوك
WskClient.RemoteHost = txtIP.Text 'رقم الآي بي الذي سوف يتم الإتصال به
WskClient.RemotePort = txtPort.Text 'رقم البورت الذي سوف يتم استخدامه للإتصال بالسيرفر
WskClient.Connect 'أمر الوينسوك بالإتصال
End If 'إنهاء الشرط


_________________________________________________


ثاني شي كود زر قطع الإتصال ...



WskClient.Close 'قطع الإتصال مع الوينسوك
CmdConnect.Enabled = True 'تفعيل زر الإتصال
CmdDisC.Enabled = False 'إلغاء تفعيل زر الإتصال



_________________________________________________


الآن زر أرسل ....



If WskClient.State = 7 Then 'جملة شرطية تعني إذا كانت الوينسوك متصلة
WskClient.SendData txtName + ":" & vbNewLine + txtMsg 'أمرالوينسوك بإرسال
txtList = txtList & vbNewLine & vbNewLine & txtName & ":" & vbNewLine & txtMsg 'محتوى الليست التي سوف يكون بها الرسائل المرسلة و المستقبلة
DoEvents
txtMsg.Text = "" 'تفريغ محتوى مربع الإرسال
End If 'إنهاء الجملة الشرطية


__________________________________________________


مربع النص للإرسال txtMsg

في الإجراء KeyPress



If KeyAscii = 13 Then CmdSend = True 'لكي يتم الضغط على الزر CmdSend عند الضغط على Enter من لوحة المفاتيح



___________________________________________________

كود التايمر Tmr





Select Case WskClient.State 'إختيار حالة الليبل من معرفة حالة الوينسوك
Case 0: IPstat.Caption = "تم قطع الإتصال"
Case 1: IPstat.Caption = "الإتصال مفتوح"
Case 2: IPstat.Caption = "جاري إنتظار الإتصال"
Case 3: IPstat.Caption = "الإتصال مغلق الآن"
Case 4: IPstat.Caption = "الطرف الآخر يعالج البيانات"
Case 5: IPstat.Caption = "الطرف الآخر أنهى معالجة البيانات"
Case 6: IPstat.Caption = "جاري الإتصال الآن"
Case 7: IPstat.Caption = "متصل"
Case 8: IPstat.Caption = "قام الطرف الآخر بقطع الإتصال"
Case 9: IPstat.Caption = "خطأ"
End Select


طبعاً علشان يشتغل التايمر غيروا خاصية الإنترفال ل 1
وخلاص من التايمر ...

___________________________________________________


الآن الوينسوك ...

في الإجراء Close...



WskClient.Close 'قطع الإتصالات القائمة بالوينسوك
CmdConnect.Enabled = True
CmdDisC.Enabled = False



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

في الإجراء Connect ....


CmdConnect.Enabled = False 'إلغاء تفعيل زر الإتصال
CmdDisC.Enabled = True 'تفعيل زر قطع الإتصال
MsgBox "تم الإتصال تستطيع الآن بدء المحادثة"


-----------------------------------------------
في الإجراءDataArrival ....



Dim Msg As String 'تعريف متغير

WskClient.GetData Msg 'إحضار البيانات Msg

txtList = txtList & vbNewLine + vbNewLine + Msg 'محتوى الtxtList

txtList.SelStart = Len(txtList) 'لجعل النص المرسل أو المستقبل حالياً هو الظاهر يعني يتم تحريك مؤشر التمرير تلقائياً لإظهار النص الحديث


_________________________________________________


إنتهينا الآن من العميل ... إن شاء الله المرة الجاي بحطلكم السيرفر ...

وكمان رح أرفقلكم مشروع ....

إن شاء الله يكون عجبكم الشرح وبسيط وسهل للجميع ...

The Coder
09-03-2006, 10:08 PM
الله الله يا هوووووووووه ..
والله كنت ناوي اضع درس زي ذا بالسي شارب ..
ياااسلاااام عليك ....
ياا حلاوة ...
تعجبني .. والله ...
الله يجزاك الف الف خير ....


ياخي ... انت توحفة .. ولا شيء غير تووووحفة ..


اشتريك بذهب ؟؟ اشتريك ببرميل بترول ؟؟ لا لا ......
^^ ...
جزيت الف الف الف خير ^^ ..... ولنرى برنامج الخادم ^^

سلام

Fantasy-Reality
10-03-2006, 08:32 AM
مشكوور.... خخخخخ حط دروسك الحق انا سارق الافكار ههههههه امزح لاتصدق

CHALLENGER
05-06-2006, 07:23 AM
الله الله يا هوووووووووه ..
والله كنت ناوي اضع درس زي ذا بالسي شارب ..
ياااسلاااام عليك ....
ياا حلاوة ...
تعجبني .. والله ...
الله يجزاك الف الف خير ....


ياخي ... انت توحفة .. ولا شيء غير تووووحفة ..


اشتريك بذهب ؟؟ اشتريك ببرميل بترول ؟؟ لا لا ......
^^ ...
جزيت الف الف الف خير ^^ ..... ولنرى برنامج الخادم ^^

سلام


فعلا درس رائع


ممكن اخي جافا طريقة تنفيذه بالسي شارب ؟

Fantasy-Reality
10-07-2006, 09:30 AM
مشكووور يامراقبنا

نسر القاهرة
12-07-2006, 01:03 AM
يا سلام يا سلام الحقيقة يا اخي انا مش عارف اقول لك ايه يعني الصراحة ابداع لا يقارن انا اول مرة اري درس قيم بهذه الشكل خصوصا انه يدخل البرمجة بالفيجوال في ناحية عملية ومفيدة فارجو منك ان تكثر من مثل هذه الدروس :)

Fantasy-Reality
12-07-2006, 08:36 PM
يا سلام يا سلام الحقيقة يا اخي انا مش عارف اقول لك ايه يعني الصراحة ابداع لا يقارن انا اول مرة اري درس قيم بهذه الشكل خصوصا انه يدخل البرمجة بالفيجوال في ناحية عملية ومفيدة فارجو منك ان تكثر من مثل هذه الدروس :)

مشكووور يا نسر القاهره على مروورك اخخخخ انت زعلتني حذفت موضوعي انت من زمان اغلقت موضوعي المثبت يانسر القاهره لاكن الي فات مات خخخخ عادي امزح بس :D :p

نسر القاهرة
12-07-2006, 09:27 PM
مشكووور يا نسر القاهره على مروورك اخخخخ انت زعلتني حذفت موضوعي انت من زمان اغلقت موضوعي المثبت يانسر القاهره لاكن الي فات مات خخخخ عادي امزح بس :D :p

هههههههه يا اخي انت لسه فاكر :D هو قلبك اسود ولا ايه :12: اضحك فقط :biggthump
واضح انك لم تدخل موضوعك من فترة يا اخي انا قمت من فترة طويلة بفتح موضوعك مرةاخري فراجع موضوعك ;)

Fantasy-Reality
12-07-2006, 10:45 PM
ههههههه يانسر القاهره اكيد انا فاكر لانه الموضوع تعبت فيه اوي
خلاص الحين بروح اشوفه
مشكوور يانسر انا حبيت اذكرك ههههههههه:firedevil:
اضحك:D اضحك:jap021: وبس:jap017: