# Native Code > برنامه نویسی در 6 VB > برنامه نویسی مرتبط با شبکه و وب در VB6 >  broadcasting  در  vb

## sahar15125

سلام

برنامه ايي نوشتم كه در اون از 
winsock
براي ايجاد ارتباط بين كلاينت و سرور استفاده كردم

خواستم بدونم چه كدي را بايد اضافه كنم تا اولا آدرس آي پي كامپيوتر فعلي رو داشته باشم
همچنين آي پي كامپيوتر راه دور (كلاينت ) رو چه طوري بدست بيارم

در ضمن اگه بخوام كلاينت به برنامه اضافه كنم و از طريق سرور پيامي رو به طور همزمان به همه كلاينت ها ارسال كنم چه بايد كرد؟؟

با تشكر
فقط لطفا زود به دادم برسيد پروژه ام رو هواست 
مرسي :قلب:

----------


## FinalMOB

> سلام
> 
> برنامه ايي نوشتم كه در اون از 
> winsock
> براي ايجاد ارتباط بين كلاينت و سرور استفاده كردم
> 
> خواستم بدونم چه كدي را بايد اضافه كنم تا اولا آدرس آي پي كامپيوتر فعلي رو داشته باشم
> همچنين آي پي كامپيوتر راه دور (كلاينت ) رو چه طوري بدست بيارم
> 
> ...


با عرض سلام خدمت شما
ببین تا اونجا که بنده اطلاع دارم، واسه برودکست، باید به یه همچین IP ای پیغام ارسال کنی
مثلا اگه آی پی سیستم هات اینجوری باشن
192.168.1.1
192.168.1.2
192.168.13
...
واسه برودکست باید به این آی پی ارسال پیام کنی 
192.168.1.255

حالا بحث اینجاس که آیا این کار با WinSock هم قابل اجرا هستش یا نه
البته اینجور ک پیداس شما این سوال رو در مورد VB.Net پرسیدین و WinSock واسه VB6 هستش.
اگه پروژتونو یکم بیشتر توضیح بدین، خوشحال میشیم که توسط دوستان بتونیم بهتون کمک کنیم.
مسأله دیگه ای که هست اینه که شما اینکار رو می تونید با چند تا WinSock هم انجام بدید که کار رو خیلی راحت تر می کنه، یعنی شما واسه هر کلاینت، یک WinSock جدید بسازین و وقتی خواستین بهشون پیغام بفرستین، به همشون با یه حلقه FOR پیغام بفرستین.
به هر حال ما در خدمتیم  :چشمک: 

یا حق

----------


## sahar15125

سلام
 ممنون از راهنماييتون  :لبخند: 
برنامه رو با vb6  نوشتم نه با .net !
آپي ايي رو كه خواستم winsock رو بهش كانكت كنم گذاشتم توي يه تكست ؛ آي پي اش هم اينه : 127.0.0.1
اين كاري هم كه شما مي گي انجامش دادم يه كلاينت ديگه ساختم و لي كانكت نشد!  :افسرده: 
منتظر راهنماييتون هستم ... بازم ممنون :لبخند:

----------


## sahar15125

دز ضمن اينكه مي گيد براي هر كلاينت يه winsockجداگانه بذاريم و بعد به تعداد كلاينت ها پيام ارسال كنيم
من اينكارو كردم اما فقط پيامو براي يكي لز كلاينت ها مي فرسته و چون چند بار يه پيامو مي گيره توي كلاينت دچار مشكل ميشه
فكر مي كنم بايد تابع يا كد مخصوصي داشته باشه

----------


## M.T.P

> دز ضمن اينكه مي گيد براي هر كلاينت يه winsockجداگانه بذاريم و بعد به تعداد كلاينت ها پيام ارسال كنيم
> من اينكارو كردم اما فقط پيامو براي يكي لز كلاينت ها مي فرسته و چون چند بار يه پيامو مي گيره توي كلاينت دچار مشكل ميشه
> فكر مي كنم بايد تابع يا كد مخصوصي داشته باشه


دوست من شما ابتدا باید یک Winsock با Index صفر اضافه کنیند بعد اونو با یک پورت دلخواه Listen کنید و در هربار Connection_Request باید با دستور Load یک Winsock جدید با ایندکس بعلاوه یک برای ارتباط جدید ایجاد کنید ، به کد زیر توجه کنید:

Private Sub Winsock1_ConnectionRequest(ByVal ReQuestID As Long)
SockIndex = SockIndex + 1
Load Winsock1(SockIndex)
Winsock1(SockIndex).Accebt ReQuestID
End Sub
SockIndex رو بصورت عمومی تعریف کنید.
خب تا اینجای کار شما هر چندتا ارتباط از طرف کلاینت ها که داشته باشین از طرف سرور پذیرفته میشه و مشکلی نیست.
اما برای ارسال پیام به کلاینت ها باید اینگونه عمل کنید:
Dim Ctl As Control
For Each Ctl in Me.Controls
If TypeOf Ctl is Winsock then
If Ctl.State = 7 then
Ctl.SendData "Hello"
End if
End if
Next

----------


## sahar15125

ممنون 
اين كدها رو استفاده كردم اما اصلا به هيچ كدو از كلاينت ها متصل نشد
اين كد سمت كلاينت منه
Private Sub Command1_Click()
Winsock1.Close
Winsock1.Connect Text1.Text, 1000
End Sub
Private Sub Winsock1_Close()
 Winsock1.Close
 Winsock1.LocalPort = 1000
End Sub
Private Sub Winsock1_Connect()
 Command1.Enabled = False
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
   Winsock1.Close
   Winsock1.Accept requestID
End Sub

----------


## sahar15125

سمت سرور يه كليد كانكت دارم كه winsock رو به تكست با پورت 1000وصل مي كنه بايد تغييري بدم 
منتظر راهنماييتون هستم
متشكرم

----------


## M.T.P

این یک نمونه کامل از اونچه که میخواستید:  :قلب: 
1. اجرای کلاینت ها به تعداد دلخواه
2. قابلیت گزراش
3. ارسال پیام به تمام کلاینت ها

----------


## FinalMOB

با عرض سلام خدمت دوستان
بابت چند روز تاخیر معذرت می خوام
البته برنامه دوستمون هم کامله، ولی این برنامه قابلیت این رو داره که توی یک سرور بتونید به تعداد نامحدود کلاینت اضافه کنید و به همشون پیام بفرستید. فکر کنم این برنامه اونی هستش که دوستمون می خواستن..
موفق باشید

----------


## sahar15125

خيلييييييييييييييي ممنون !  :لبخند: 
واقعا معركه بود  :تشویق: 
فقط يه سوال كوچولوي ديگه اينكه Socket.Ubound  چي رو بر مي گردونه؟
لطفتونو فراموش نمي كنم ... عالي بووووووووووووووود  :تشویق:

----------


## sahar15125

برنامه خوبي بود فقط در هر لحظه پيغامو واسه يكي از كلاينت ها مي فرسته
آي پي 127.0.0.2 رو كه مي زنم اولي كانكت مي شه و بعد با آي پي 127.0.0.3 كلاينت دوم كانكت ميشه اما با كليك روي ارسال پيام پيام فقط يراي كلاينتي كه اخيرا متصل شده فرستاده مي شه !!!

----------


## FinalMOB

با سلام خدمت شما
قابل شما رو نداشت  :لبخند: 




> فقط يه سوال كوچولوي ديگه اينكه Socket.Ubound  چي رو بر مي گردونه؟
>  لطفتونو فراموش نمي كنم ... عالي بووووووووووووووود


ببینید، ما توی این برنامه یک شیء WinSock ساختیم و واسه اینکه بتونیم با یک سرور به چند تا کلاینت متصل بشیم، شیءمون رو به صورت آرایه ای کردیم و هر دفعه که یه کلاینت اضافه کنیم، یک شیء جدید به آرایه ها مون اضافه میشه؛ حالا این دستور "Socket.UBound[IMG]file:///C:/Users/Hosein/AppData/Local/Temp/moz-screenshot.png[/IMG]" شماره آخرین آرایه از شیء رو بر می گردونه
در این برنامه، توی یه حلقه For میاد از آرایه شماره 1 تا آخرین آرایه رو بهشون مسیج میفرسته




> برنامه خوبي بود فقط در هر لحظه پيغامو واسه يكي از كلاينت ها مي فرسته
> آي پي 127.0.0.2 رو كه مي زنم اولي كانكت مي شه و بعد با آي پي 127.0.0.3 كلاينت دوم كانكت ميشه اما با كليك روي ارسال پيام پيام فقط يراي كلاينتي كه اخيرا متصل شده فرستاده مي شه !!!


برنامه ای که بنده نوشتم، میتونه به چند تا کلاینت به صورت همزمان هم وصل بشه؛ البته اگه کلاینت رو چند تا سیستم اجرا کنید براحتی وصل میشه ولی اگه می خواهید که روی یه سیستم اجرا کنید این مراحل رو انجام بدید

1. فایل exe از سرور و کلاینت رو بسازید
2. یکبار هم فایل سرور و هم فایل کلاینت رو اجرا کنید
3. توی سرور آی پی 127.0.0.1 رو وارد کنید و یه کلاینت اضافه کنید
4. حالا یه کلاینت دیگه اضافه کنید و آی پی 127.0.0.2 رو در سرور وارد کنید و یه کلاینت دیگه اضافه کنید.
5. به همین ترتین می تونید کلاینت های بیشتری اضافه کنید
6. حالا اگه دکمه ارسال پیام رو بزنید به طور همزمان واسه همشون میفرسته

موفق باشید

----------


## M.T.P

> برنامه خوبي بود فقط در هر لحظه پيغامو واسه يكي از كلاينت ها مي فرسته
> آي پي 127.0.0.2 رو كه مي زنم اولي كانكت مي شه و بعد با آي پي 127.0.0.3 كلاينت دوم كانكت ميشه اما با كليك روي ارسال پيام پيام فقط يراي كلاينتي كه اخيرا متصل شده فرستاده مي شه !!!


ضمن تشکر از جناب FinalMOB ،  برنامه ای که بنده گذاشتم به تمام کلاینت ها پیغام میفرسته ، شما باهاش مشکل دارین؟ :متفکر:

----------


## FinalMOB

> برنامه ای که بنده گذاشتم به تمام کلاینت ها پیغام میفرسته ، شما باهاش مشکل دارین؟


البته این سوال مربوط به بنده نیست ولی با اجازه دوستان جواب میدم :D
برنامه ی شما در هر لحظه فقط میتونه با یک سیستم ارتباط برقرار کنه، واسه اینکه با یک Winsock در یه لحظه فقط میشه یک ارتباط برقرار کرد؛ بنابراین وقتی ارتباط با سیستم دوم برقرار میشه، ارتباط با سیستم اول قطع میشه
واسه اینکه مشکل برنامتون حل بشه، شما باید از اشیاء آرایه ای استفاده کنید که نمونش توی سورسی که بنده گذاشتم هست به این ترتیب که واسه هر سیستم که اضافه میشه، یک WinSock جدید ساخته بشه

موفق باشید ;)

----------


## M.T.P

> برنامه ی شما در هر لحظه فقط میتونه با یک سیستم ارتباط برقرار کنه
> موفق باشید ;)


با هر چندتا کلاینت که دوست دارید بهش Connect کنید.



> وقتی ارتباط با سیستم دوم برقرار میشه، ارتباط با سیستم اول قطع میشه


همچین چیزی نیست ، هرگاه درخواست اتصال میشه یک Winsock جدید Load میشه و Winsock جدید ارتباط رو برقرار میکنه



> واسه اینکه مشکل برنامتون حل بشه، شما باید از اشیاء آرایه ای استفاده کنید


دقیقا همین کارو کردم. از Index اولین Winsock میتونین پی به این موضوع ببرین.

در پایان برای تست این موضوع یک سرور با چندین کلاینت رو اجرا کنید و تمامی کلاینت ها رو بهش کانکت کنین و از طرف سرور پیام ارسال کنید.
من از همین روش در برنامه ای که برای ارتباط بین سرور و کلاینت های یک گیم نت مورد نیاز هست استفاده کردم.
. ارسال پیام به کلیه سیستم ها (اخبار گیم نت) کنترل و مدیریت زمان و ...
موفق باشید./ :لبخند:

----------


## M.T.P

جناب sahar15125 باید خدمت شما عرض کنم که در مبحث شبکه این کلاینت ها و در واقع سرویس گیرنده ها هستند که باید به سرور(سرویس دهنده) به اصطلاح Connect شن نه اینکه برعکس.
در رابطه با موضوعی که شما درخواست کردین یک IP نیاز هست و اون هم مربوط به سرور هست و تمامی کلاینت ها باید به این IP و پورتی که Listen کردین متصل شوند. :لبخند:

----------


## FinalMOB

> جناب sahar15125 باید خدمت شما عرض کنم که در مبحث شبکه این کلاینت ها و در واقع سرویس گیرنده ها هستند که باید به سرور(سرویس دهنده) به اصطلاح Connect شن نه اینکه برعکس.
> در رابطه با موضوعی که شما درخواست کردین یک IP نیاز هست و اون هم مربوط به سرور هست و تمامی کلاینت ها باید به این IP و پورتی که Listen کردین متصل شوند.


البته شما یه سوتی کوچولو دادین اونم اینکه نوشتین جناب sahar15125  :لبخند گشاده!:  :بامزه: 
این برنامه ای که شما ضمیمه کردین، WinSock ای که داخلش گذاشتین، اصلا اندکس نداره، و احتمالا برنامه رو اشتباه ضمیمه کردین

حرف شما در مورد کلاینت و سرور درسته ولی در اینجا ما چون یک برنامه داریم که همیشه در حال اجراس، بهش میگیم سرور که مدیریت می کنه و به اون برنامه ای که به دفعات روی سیستم های مختلف اجرا میشه میگیم کلاینت.

موفق باشید

----------


## M.T.P

> البته شما یه سوتی کوچولو دادین اونم اینکه نوشتین جناب sahar15125 
> این برنامه ای که شما ضمیمه کردین، WinSock ای که داخلش گذاشتین، اصلا اندکس نداره، و احتمالا برنامه رو اشتباه ضمیمه کردین
> 
> حرف شما در مورد کلاینت و سرور درسته ولی در اینجا ما چون یک برنامه داریم که همیشه در حال اجراس، بهش میگیم سرور که مدیریت می کنه و به اون برنامه ای که به دفعات روی سیستم های مختلف اجرا میشه میگیم کلاینت.
> 
> موفق باشید


1. در مورد سوتی که بهش اشاره کردین باید به شما تبریک گفت چون شما حتی از روی نوشته پی به جنسیت افراد میبرین و مطمئن هستم بدون اینکه نگاه به برنامه بنده بندازید کدش رو حدس زدید.  :تشویق: 
2.ایرادی که Sahar15125 گرفتن دقیقا از برنامه شما بود ، این موضوع رو دوستان هم میتونن تست کنن.
3. این سایت محل پرسش و پاسخ در زمینه برنامه نویسی هست و اصولا واژه سوتی با موضوع سایت مرتبط نیست.
4. بهتره بررسی این موضوع رو به مدیران و دوستان دیگه بسپریم و اینجا رو به میدون رقابت تبدیل نکنیم. :لبخند:

----------


## FinalMOB

> 1. در مورد سوتی که بهش اشاره کردین باید به شما تبریک گفت چون شما حتی از روی نوشته پی به جنسیت افراد میبرین و مطمئن هستم بدون اینکه نگاه به برنامه بنده بندازید کدش رو حدس زدید. 
> 2.ایرادی که Sahar15125 گرفتن دقیقا از برنامه شما بود ، این موضوع رو دوستان هم میتونن تست کنن.
> 3. این سایت محل پرسش و پاسخ در زمینه برنامه نویسی هست و اصولا واژه سوتی با موضوع سایت مرتبط نیست.
> 4. بهتره بررسی این موضوع رو به مدیران و دوستان دیگه بسپریم و اینجا رو به میدون رقابت تبدیل نکنیم.


البته منظور بنده فقط شوخی بود  :افسرده:  معذرت خواهی هم می کنم از شما اونم جلوی همه :افسرده:  ولی شما یکم حرفاتون زیادی نیش و کنایه داره ها  :افسرده:  :ناراحت:  :گریه: 
1. ببینید دوست عزیز، برنامه شما رو حتی واسه اینکه مطمئن بشم، 2 بار دانلود کردم و نتیجه همونی بود که گفتم
2. بنده از مطرح کردن اون سوتی، اصلا منظورم جنسیت نبود، آخه اگه دقت کنین، شما داشتین جواب سوال بنده رو می دادین، ولی یه اسم دیگه رو بردین، یعنی به جای اینکه بنویسید مثلا جناب FinalMOB نوشتید جناب sahar15125
3. نمیدونم ایرادی که ایشون گرفتن مربوط به کدوم برنامه بوده، ولی اگه از برنامه بنده بوده، جوابش توی پست های قبلی داده شده
4. به هر حال از شما دوست عزیز عذر خواهی می کنم، امیدوارم که بی ادبی بنده رو به بزرگی خودتون ببخشین، ما خاک پای شما هم نیستیم  :چشمک: 
5. کاملا درسته، اینجا میدون رقابت نیست، ولی چیزی که هست اینه که باید برنامه ای که در سایت قرار داده میشه درست کار کنه و در صورتی که مشکلی داشت، به نویسندش اطلاع بدن، بنده هم فقط قصد اطلاع داشتم نه جسارت
بازم عذر می خوام

موفق باشید

----------


## M.T.P

خب بنده هم قصد جسارت نداشتم. :خجالت:  و منظورم از جناب Sahar15125 دقیقا ایشون بود چون در پاسخ به پست اولشون که گفتن میخوام از سرور به کلاینت وصل شم.
بابا به خدا ایندکس وینسوک سرور من صفر هست و اگه غیر از باشه که اصلا رویداد Load بهش گیر میده ، شاید منظور شما Winsock سمت کلاینت هست.
ببینید شما سرور برنامه منو اجرا کنید(روی یک سیستم) و چندتایی هم کلاینت اجرا کنید ، بعد Connect تمامی کلاینت ها رو بزنید. خب حالا از سرور یک پیام Send کنید و نتیجه رو اعلام کنید ، والا من رو یه سیستم اجراش کردم جواب داد ، تو شبکه هم فقط IP سرور رو به کلاینت ها میدم همه بهش Connect میشن ، من دقیقا چندوقته که از همین روش برای کنترل تک تک و یا همه سیستم های کلاینت در گیم نت استفاده میکنم ، خاموش میکنم ، ریستارت ، Logoff ، تنظیم Mouse ، رزولوشن ، و ............. :خیلی عصبانی: 
پدرم صلواتی شد ، اصلا بیخیال.
 :متعجب: موفــــــــــــــــــــــ  ـــــق باشــــــــــــــــــــــ  ـید. :متعجب:

----------


## FinalMOB

> خب بنده هم قصد جسارت نداشتم. و منظورم از جناب Sahar15125 دقیقا ایشون بود چون در پاسخ به پست اولشون که گفتن میخوام از سرور به کلاینت وصل شم.
> بابا به خدا ایندکس وینسوک سرور من صفر هست و اگه غیر از باشه که اصلا رویداد Load بهش گیر میده ، شاید منظور شما Winsock سمت کلاینت هست.
> ببینید شما سرور برنامه منو اجرا کنید(روی یک سیستم) و چندتایی هم کلاینت اجرا کنید ، بعد Connect تمامی کلاینت ها رو بزنید. خب حالا از سرور یک پیام Send کنید و نتیجه رو اعلام کنید ، والا من رو یه سیستم اجراش کردم جواب داد ، تو شبکه هم فقط IP سرور رو به کلاینت ها میدم همه بهش Connect میشن ، من دقیقا چندوقته که از همین روش برای کنترل تک تک و یا همه سیستم های کلاینت در گیم نت استفاده میکنم ، خاموش میکنم ، ریستارت ، Logoff ، تنظیم Mouse ، رزولوشن ، و .............
> پدرم صلواتی شد ، اصلا بیخیال.
> موفــــــــــــــــــــــ  ـــــق باشــــــــــــــــــــــ  ـید.


وای نــــــــــــــــــــــــ  ـــــــــه  :افسرده:  :لبخند گشاده!: 
یه حسی بهم میگه که از جناب پارسی لورد حسابی باید عذر خواهی کنی  :لبخند گشاده!: 
شرمنده شدیم حسابی  :خجالت:  :لبخند گشاده!:  آقا تاحالا کسی اینجوری ازت معذرت خواهی کرده بود؟  :لبخند گشاده!:  اگه نه، خوب من افتخار دارم اولیش باشم :لبخند گشاده!: 
برنامه شما برعکس برنامه بنده هستش، یعنی کلاینت ها هستند که به سرور متصل میشن واسه همینم بود که ...  :لبخند گشاده!: 
آقا دمت گرم، کار درست رو شما کردی، ولی ما خودمون چون برنامه کافی نت نوشته بودیم، مبنا رو بر این گذاشتیم که آقای صاحب کافی نت حال نداره بره روی هر سیستمی IP بزنه، واسه همینم اضافه شدن سیستم ها رو به عهده سرور گذاشتیم.
آقا من بازم عذر می خوام  :لبخند گشاده!: 

موفق باشید

----------


## M.T.P

با سلام 
خیلی مخلصیم  :بامزه: 
راستی این وارد کردن آی پی آدرس و پورت در کلاینت ها واسه درک بهتر مطلب بود وگرنه وقتی شما برنامه ای رو تحت شبکه کامپایل میکنید و میفروشین که دیگه هر بار مشتری نباید IP بنویسه و کانکت بزنه ، اولین بار که برنامه اجرا میشه با اجرای فرم پیکربندی برنامه IP و Port سرور رو میگیره و تو ریجستری یا دیتابیس ذخیرش میکنه و ازون به بعد هر بار که برنامه اجرا میشه IP و PORT رو میخونه و بصورت Auto به سرور کانکت میشه.  :لبخند:

----------


## sahar15125

با عرض سلام و خسته نباشيد خدمت دوستان محترم...

 مطمئنا در جايي كه استاد دانشگاه كه خودش پروژه ايي رو مطرح مي كنه زحمت ديدنشو هم به خودش نميده دوستاني مثل شما كه لطف مي كنن و نه تنها جواب آدم رو مي دن بلكه در رفع اشكالات برنامه نويس مبتدي مثل من كمك هم مي كنن تا جايي كه كار به مباحثه هم مي كشه قطعا بايد تشكر كرد!!! :قلب:  :خجالت: 

من بازم از لطف هردوتون ممنونم :لبخند: 

مشكلي كه مطرح كردم مربوط به برنامه آقاي (فينال موب) بود كه البته برنامه ايشون در كاربرد خودش خوبه ولي منظور من از برودكست ارسال همزمان پيام بود كه بابت برنامه آقاي پرشين لورد تشكر ويژه مي كنم :تشویق: 

البته درگير شدن با برنامه شما(فينال موب) كمك كرد يه كم مثه برنامه نويسا فكر كنم ( فقط شانس باهام يار بود كه اين ترم واحد كم دارم وگرنه الان بابت اون وقتي كه پرت شد شاكي بودم!) :بامزه: 

در ضمن لفظ جناب رو واسه خانوما بكاربردن خيلي هم بد نيستا هرچند يه كم جديده !!! :متفکر: 
ولي در كل باحاله عين برنامه اتون مي مونه  :قلب:  :لبخند گشاده!: 

 در آخر از آشناييتون خيلي خوشبختم
موفق باشييييد :قلب:

----------


## sahar15125

راستي يادم رفت بگم 
winsock.state=7يعني winsock در حالت كانكت باشه ديگه نه؟
فردا ديگه اگه خدا بخواد بعد از 3 بار كه جناب استاد منو سنگ قلاب كرد مي خواد پروژه امو ببينه اونجا سوتي ندم يهو!!!
هرچند خودشم چيزي بارش نيست  :بامزه:  لطفا تا فردا هركي اين پستو خوند جواب بده ... مرسي  :لبخند:

----------


## M.T.P

> راستي يادم رفت بگم 
> winsock.state=7يعني winsock در حالت كانكت باشه ديگه نه؟
> فردا ديگه اگه خدا بخواد بعد از 3 بار كه جناب استاد منو سنگ قلاب كرد مي خواد پروژه امو ببينه اونجا سوتي ندم يهو!!!
> هرچند خودشم چيزي بارش نيست  لطفا تا فردا هركي اين پستو خوند جواب بده ... مرسي


با سلام
State در حالت 7 یعنی اتصال برقرار شده است. معادل sckconnected
State در حالت 6 یعنی در حال اتصال... معادل sckconnecting
State در حالت 2 یعنی منتظر یا بگوش (Listen)
ُState در حالت 8 یعنی خطا
State در حالت 0 یعنی بسته یا همون Close معادل SckClosed

موفق باشید./

----------


## FinalMOB

> مشكلي كه مطرح كردم مربوط به برنامه آقاي (فينال موب) بود كه البته برنامه ايشون در كاربرد خودش خوبه ولي منظور من از برودكست ارسال همزمان پيام بود


با سلام، فکر نکنم چیزی که به عنوان برودکست می شناسیم، عملا در vb 6 جواب بده، ولی به احتمال زیاد توی vb.net جواب میده
ولی خوب، توی vb هم میشه یه همچین چیزی رو پیاده سازی کرد به این روش که یکی یکی پیام ها رو بفرستیم ولی بدون تاخیر

موفق باشید.

----------


## a_mohammadi_m

> برنامه خوبي بود فقط در هر لحظه پيغامو واسه يكي از كلاينت ها مي فرسته
> آي پي 127.0.0.2 رو كه مي زنم اولي كانكت مي شه و بعد با آي پي 127.0.0.3 كلاينت دوم كانكت ميشه اما با كليك روي ارسال پيام پيام فقط يراي كلاينتي كه اخيرا متصل شده فرستاده مي شه !!!



با سلام 
اجازه هست يه چيزي بگم ؟؟
فكر كنم IP  در رنج  127.0.0   تو شبكه معتبر نباشه ها
مثلا 127.0.0.1   مال خود كامپيوتر هست براي استفاده داخلي ولي جايي نديدم 127.0.0.2  و  غيره استفاده بشه
ميشه يه توضيحي بدين ؟

----------


## sahar15125

راستش من خودم مختص نوشتم كه اين آي پي ها رو زدم كه اگه اشتباهه دوستان راهنمايي كنن
اما پروژه خودم چون قرار بود روي يه سيستم اجرا بشه 127.0.0.1 رو بعنوان آدرس استفاده كردم تا برگشت بشه به خود فرستنده (آدرس برگشت)

----------


## FinalMOB

> با سلام 
> اجازه هست يه چيزي بگم ؟؟
> فكر كنم IP  در رنج  127.0.0   تو شبكه معتبر نباشه ها
> مثلا 127.0.0.1   مال خود كامپيوتر هست براي استفاده داخلي ولي جايي نديدم 127.0.0.2  و  غيره استفاده بشه
> ميشه يه توضيحي بدين ؟


سلام دوست عزيز
اولا، در رنج 127، فقط 127 ثابت هستش، و اون سه تاي ديگه مي تونن متغير باشن
در ثاني، 127.0.0.0 معتبر نيست ولي از 127.0.0.1 تا 127.0.0.254 معتبره (البته اعتبارش فقط ماله سيستم خودته،‌در واقع اصلا رنج 127 كارش لوپ بك هستش و هيچ استفاده اي ديگه نداره)

همه ي آي پي هاي رنج x127.x.y.zمخصوص لوپ بك هستن،‌در واقع شما با استفاده از اين آي پي ها مي تونيد به خودتون پيام ارسال كنيد. اين روش مخصوص زماني استفاده ميشه كه مثلا مي خواهيد يه برنامه تحت شبكه كه نوشتين رو روي سيستم خودتون تست كنين.

حالا توي برنامه اي كه بنده نوشته بودم، واسه اينكه يك سرور بتونه چند تا كلاينت رو مديريت كنه، كلاينت اول به آدرس 127.0.0.1 متصل مي شد، ولي چون كلاينت دوم ديگه نميتونه از همون آدرس استفاده كنه،‌بايد اين آدرس رو وارد مي كرديد 127.0.0.2

*ولي در عمل همه ي اين آي پي ها فرقي ندارند به به سيستم جاري اشاره مي كنند.*

----------


## a_mohammadi_m

با سلام و با تشكر از توضيحتون 
منم منظورم همين بود 
البته من 3 تا صفر ننوشته بودم منظورم رنج 127.0.0.1 تا 127.0.0.254  بود ( دو تا صفر نوشته بودم )
موفق باشيد

----------


## Somtimes

> این یک نمونه کامل از اونچه که میخواستید: 
> 1. اجرای کلاینت ها به تعداد دلخواه
> 2. قابلیت گزراش
> 3. ارسال پیام به تمام کلاینت ها


 
دوست عزيز من خيلي دنبال همچين سورسي گشتم اين بهترينشونه مرسي ولي سورسش قابل اجرا نيست ميشه راهنمايي كنين؟منظورم اينه كه وقتي ران ميكنم ارور ميده فك كنم فايل دي ال ال ميخاد كه ميگه برين لوگوي برنمامه رو ببينيد خيلي نياز دارم بهش اگه ميشه زودتر مرسيييييييييي :بوس:  :بوس:  :بوس:

----------


## M.T.P

سلام
تنها کامپوننتی که ازش استفاده کردم mswinsock.ocx هست.
تصویر Error رو ضمیمه کنید.

----------


## Somtimes

> سلام
> تنها کامپوننتی که ازش استفاده کردم mswinsock.ocx هست.
> تصویر Error رو ضمیمه کنید.


 
مرسي pc عوض كردم حل شد.ولي تو كامپيوتر اصليم كار نميكنه.من حتي چن بار mswinsock.ocx دانلود كردم و زدم به پوشه system32 ولي باز همين ارور رو ميده :ناراحت:

----------


## M.T.P

به نظرم شما ویژوال بیسیک PortAble نصب کردید! کنترل های میکروسافت موقع استفاده در محیط IDE نیاز به لایسنس دارن.
یا ویژوال بیسیک 6 رو نصب کن ، یا یه نسخه جدیدتر مثل 2005 یا 2008. لایسنس اضافه میشه.
موفق باشید./

----------


## sahar15125

سلام به همه ...
خوبين؟خوشين؟
ميشه لطفا يكي يه سورس در رابطه با ارسال voice براي من بذاره؟
تا حالا تو اين زمينه كار نكردم توي پستي هم كه گذاشتم ضمن اينكه از راهنمايي دوستان ممنونم اما چيزي دستگيرم نشدش  :افسرده: 
لطفا هركس مي دونه كمك كنه ... مرسي  :لبخند:

----------


## mehdi_song

> البته منظور بنده فقط شوخی بود  معذرت خواهی هم می کنم از شما اونم جلوی همه ولی شما یکم حرفاتون زیادی نیش و کنایه داره ها 
> 1. ببینید دوست عزیز، برنامه شما رو حتی واسه اینکه مطمئن بشم، 2 بار دانلود کردم و نتیجه همونی بود که گفتم
> 2. بنده از مطرح کردن اون سوتی، اصلا منظورم جنسیت نبود، آخه اگه دقت کنین، شما داشتین جواب سوال بنده رو می دادین، ولی یه اسم دیگه رو بردین، یعنی به جای اینکه بنویسید مثلا جناب FinalMOB نوشتید جناب sahar15125
> 3. نمیدونم ایرادی که ایشون گرفتن مربوط به کدوم برنامه بوده، ولی اگه از برنامه بنده بوده، جوابش توی پست های قبلی داده شده
> 4. به هر حال از شما دوست عزیز عذر خواهی می کنم، امیدوارم که بی ادبی بنده رو به بزرگی خودتون ببخشین، ما خاک پای شما هم نیستیم 
> 5. کاملا درسته، اینجا میدون رقابت نیست، ولی چیزی که هست اینه که باید برنامه ای که در سایت قرار داده میشه درست کار کنه و در صورتی که مشکلی داشت، به نویسندش اطلاع بدن، بنده هم فقط قصد اطلاع داشتم نه جسارت
> بازم عذر می خوام
> 
> موفق باشید


بنده قصد جسارت رو ندارم و از مدير عزيز هم عذر خواهي مي كنمولي مشكل از شماست چون من برنامه ي ايشون رو با 45 تا كلاينت امتحان كردم و جواب قابل قبولي رو هم داد. :لبخند:

----------

