PDA

View Full Version : دستور نا مفهوم



good_boy
شنبه 19 فروردین 1391, 21:10 عصر
سلام
یک سوال دارم
این دستور در ساخت کلاینت سرور با استفاده از winsock به چه معنا می باشد؟

‫‪If (tcp1.State <> sckClosed) Then tcp1.Close‬‬
به چه دلیل باید winsock بسته بشه؟
و همچنین این دستور در ادامه به جه منظور می باشد
tcp1.Accept requestID
و در آخر به چه دلیل باید در این تابع قرار گیرند؟
Private Sub tcp1_ConnectionRequest(ByVal requestID As Long)
...
End Sub
من تعریف های ساده و مختصری رو در سایت های مختلف خواندم ولی هیچ کدام کامل نبود
لطفا اگر کسی به طور کامل میدونه توضیح بده
با تشکر

just4froum
شنبه 19 فروردین 1391, 21:52 عصر
در مورد این که چرا باید وینسوک بسته بشه چون در مرحله قبل شما وینسوک را در حالت listen قرار دادید به همین دلیل. (این دیگه قانون وینسوک هست شما باید اول بگید کاری رو که داری میکنی دیگه انجام نده بعد یه وظیفه جدید بهش بدی :گیج:)

tcp1.accept requestid :

منظور از tcp1 که نام وینسوک شما هست.
برای accept هم میشه اینجوری گفت که برای پذیرفتن اتصال است ( یعنی وینسوک دوم درخواست اتصال به وینسوک اولو میکنه حالا اولیه می تونه بپذیره یا رد کنه)
requestid هم کدی هست که باهاش درخواست وینسوک دومی شناخته میشه.


حالا چرا باید در تابع tcp1_ConnectionRequest قرار بگیره ؟

خوب وقتی وینسوک دوم درخواست اتصال میکنه این تابع فعال میشه که requestid هم همون کدی که باهاش میفهمیم کی درخواست داده !!!