نمایش نتایج 1 تا 3 از 3

نام تاپیک: مشکل در برنامه نویسی سوکت: اطلاع از پایان یافتن دریافت دیتا در سرور

  1. #1
    کاربر جدید آواتار matrixrayaneh
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    sari
    پست
    16

    Question مشکل در برنامه نویسی سوکت: اطلاع از پایان یافتن دریافت دیتا در سرور

    سلام دوستان
    من یه برنامه با سوکت نوشتم که در اون اطلاعات رو از کلاینت میخونم. تا اینجاش مشکلی نیست اما مشکل اینجاست که دو سری داده به سرور میاد که باید وقتی سری اول اومد یه پیغامی به کلاینت بفرستم تا اون کلاینت سری دوم رو هم بفرسته. مشکل اینجاست که نمیتونم پایان یافتن دریافت سری اول رو تو برنامه مشخص کنم. ممنون میشم راهنمایی بفرمایید. کد رو هم میذارم و اگه بشه با همین کد درستش کنم ممنون میشم.




    Imports System
    Imports System.Net
    Imports System.Net.Sockets
    Imports System.Threading
    Imports System.Text


    Public Class Frm_server


    Private Server As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
    Private Virtual_Client As Socket
    Public EndP As IPEndPoint
    Dim t As Integer
    Private Recived As [Byte]()


    Private Sub Server_BeginAccept(Result As IAsyncResult)


    Virtual_Client = Server.EndAccept(Result)
    Recived = New [Byte](1) {} '([Byte].MaxValue - 1) {}
    Virtual_Client.BeginReceive(Recived, 0, Recived.Length, SocketFlags.None, AddressOf Server_BeginRecived, Nothing)


    End Sub


    Private Sub Server_BeginRecived(Result As IAsyncResult)
    Dim Recv As Integer = Virtual_Client.EndReceive(Result)


    If Recv > 0 Then
    SetText(Encoding.ASCII.GetString(Recived))


    Virtual_Client.BeginReceive(Recived, 0, Recived.Length, SocketFlags.None, AddressOf Server_BeginRecived, Nothing) 'Server_BeginRecived
    t += Recv
    Else
    MsgBox("Recivd End")
    End If


    End Sub


    Private Delegate Sub SetTextCallBack(Text As String)


    Private Sub SetText(Text As [String])
    If TextBox1.InvokeRequired Then
    Dim d As New SetTextCallBack(AddressOf SetText)
    Me.Invoke(d, New Object() {Text})
    Else
    TextBox1.Text += (Text)
    End If


    End Sub


    Private Sub button1_Click(sender As Object, e As EventArgs) Handles button1.Click
    EndP = New IPEndPoint(IPAddress.Parse(txt_ip.Text), 2010)


    Server.Bind(DirectCast(EndP, EndPoint))
    Server.Listen(-1)
    Server.BeginAccept(AddressOf Server_BeginAccept, Nothing)
    End Sub


    Private Sub Frm_server_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    txt_ip.Text = "127.0.0.1"
    End Sub
    End Class




    آخرین ویرایش به وسیله Mahmoud.Afrad : سه شنبه 21 مهر 1394 در 03:01 صبح

  2. #2

    نقل قول: مشکل در برنامه نویسی سوکت: اطلاع از پایان یافتن دریافت دیتا در سرور

    کلاینتت چیه؟
    اونم یه سیستم کامپیوتری هست یا یه دستگاه؟
    این چیزی که توضیح دادی خیلی کلی هست
    یعنی برنامه شما سرور هست؟ خوب پس در این صورت چند تا کلاینت داری؟ کلاینتات چیه؟ نحوه ارتباط چیه؟ وای فای یا usb؟
    شبکه ای که سرور و کلاینت در اون قرار دارن چیه؟ توسط سرور ایجاد میشه؟ یا خود سرور هم باید به یه شبکه join شه؟
    در این ارتباطات شما باید پروتکل درستی تعریف کنید
    خوب برنامه شما مدام در حال گوش دادن هست
    به محض اینکه داده ای دریافت کرد
    باید داده را بررسی کند
    در صورت نیاز به کلاینت پیغام مورد نظر را ارسال کند
    تجربه من تو این زمینه میگه که اصل کدنویسی بسیار ساده هست
    مهم پروتکل مورد استفاده و تعریف شده برای ارتباط است
    امیدوارم تونسته باشم کمکی کنم
    موفق باشید

  3. #3
    کاربر جدید آواتار matrixrayaneh
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    sari
    پست
    16

    نقل قول: مشکل در برنامه نویسی سوکت: اطلاع از پایان یافتن دریافت دیتا در سرور

    ممنون از زاهنماییتون
    برنامه من یک سرور هست گه قراره داده ها رو از یک دستگاه که به یک کامپیوتر وصله و از اون ارسال میشه رو بخونه
    مشکل اینجاست که داده ها دریافت میشن اما نه کامل
    به این صورت که داده ها به صورت بسته های پشت سر هم
    من اولین بسته رو دریافت میکنم که حدودا 704 بایت هست
    اما بقیه اش نمیاد
    نمیدونم چرا
    حتی با سمپل های مایکروسافت MSDN هم انجام دادم نشد

    سیستمی که برنامه من روش نصبه وسیستمی که به دستگاه وصله مشابه هستن یعنی هردو رو یک سیستم نصب هستن
    شبکه هم یک شبکه اداره هست که فکر نمیکنم چیز خاصی داشته باشه

تاپیک های مشابه

  1. پاسخ: 0
    آخرین پست: جمعه 13 شهریور 1394, 15:04 عصر
  2. مشکل با برنامه نویسی سوکت
    نوشته شده توسط NIMA_1981 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 2
    آخرین پست: دوشنبه 14 فروردین 1391, 19:24 عصر
  3. سوال: مشکل در برنامه نویسی سوکت و بر قراری اتصال اولیه مشتری با سرور
    نوشته شده توسط ali208 در بخش شبکه و Networking‌
    پاسخ: 12
    آخرین پست: پنج شنبه 10 شهریور 1390, 18:07 عصر
  4. سوال: مشکل در برنامه نویسی سوکت
    نوشته شده توسط *KIARASH* در بخش C#‎‎
    پاسخ: 0
    آخرین پست: شنبه 08 مرداد 1390, 13:43 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •