metode pengiriman informasi menggunakan ip adress dengan port

salam, semoga ilmu ini berguna untuk yang newbie, okey kali ini saya akan menerangkan sesingkat mungkin konsep dari judul yang saya buat, yaitu metode mengirim informasi menggunakan ip adress dengan menggunakan port, sebagai contoh, kita memiliki dua buah komputer, dan kita ingin mengirim pesan kepada komputer yang lain, bila kita pahami dua komputer yang akan kita hubungkan meski memiliki ip adress yang berbeda, dan kita mendeskripsikan port yang akan kita pake untuk berkomunikasi, satu komputer dengan komputer yang lain harus memiliki port yang sama, akan tetapi memiliki ip adress yang berbeda, cara ini sudah di gunakan pada aplikasi yang berbasis LAN,  yaiku aplikasi client server,.. tapi dalam hal ini saya bukan menjelaskan tentang client server mungkin dilain kali,. sekarang kita tahu pada dasarnya sistem informasi memberi data untuk diolah,. okey kita akan belajar untuk mengolah data yang dikirim oleh port ip/tcp adress,

sediakan. program pengirim data:
1. membuat program pengirim data ke port (pengirim)
2. mendeskripsikan apa yang dikirim oleh port (penerima)
3. memberi responds terhadap pengirim
4. menampilkan hasil responds penerima

pahami dengan baik konsep di atas :

mari kita menuju tema pembahasan, saya menggunakan vb sebagai metode untuk pembelajarannya

1. koding untuk mengirim pesan lewat port sebagai berikut :

    Private Sub SendButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SendButton.Click
        Dim str_penjualan As String
        If _Connection IsNot Nothing AndAlso _Connection.Client.Connected AndAlso _Connection.Stream IsNot Nothing Then
            str_penjualan = "#01|" + T2.Text + "|" + T1.Text + "|" + T3.Text + "|" + T4.Text + "|" + T5.Text + "|" + Date.Today + "|" + TimeOfDay
            Dim buffer() As Byte = System.Text.Encoding.ASCII.GetBytes(str_penjualan)
            _Connection.Stream.Write(buffer, 0, buffer.Length)
        End If
    End Sub

2. koding untuk menerima kiriman dari pengirim
  Private Sub input_mysql(ByVal strings As String)
        Call switch_koneksi()
        Dim strArr() As String
        strArr = strings.Split("|")
        If strArr.Length > 2 Then
         Select strArr(0) 'process it by the first element in the split array
                Case "#01"
                    cmd = New MySqlCommand("insert into td_data (kd_transaksi,spbn_id,harga,jml_liter,bayar,tanggal,jam) values (@kd_transaksi, @spbn_id, @harga, @jml_liter, @bayar, @tanggal, @jam)", conn)
                    cmd.Parameters.Add("@kd_transaksi", MySqlDbType.VarChar).Value = strArr(1).ToString
                    cmd.Parameters.Add("@spbn_id", MySqlDbType.VarChar).Value = strArr(2).ToString
                    cmd.Parameters.Add("@harga", MySqlDbType.VarChar).Value = strArr(3).ToString
                    cmd.Parameters.Add("@jml_liter", MySqlDbType.VarChar).Value = strArr(4).ToString
                    cmd.Parameters.Add("@bayar", MySqlDbType.VarChar).Value = strArr(5).ToString
                    cmd.Parameters.Add("@tanggal", MySqlDbType.Date).Value = strArr(6).ToString
                    cmd.Parameters.Add("@jam", MySqlDbType.VarChar).Value = strArr(7).ToString
                    cmd.ExecuteNonQuery()
                Case "#02"
                    cmd = New MySqlCommand("insert into td_pembelian (kd_pembelian,spbn_id,faktur,no_mobil,nama_supir,stik_mobil,jml_liter,tanggal,jam) values (@kd_pembelian, @spbn_id, @faktur, @no_mobil, @nama_supir, @stik_mobil, @jml_liter,@tanggal,@jam)", conn)
                    cmd.Parameters.Add("@kd_pembelian", MySqlDbType.VarChar).Value = strArr(1).ToString
                    cmd.Parameters.Add("@spbn_id", MySqlDbType.VarChar).Value = strArr(2).ToString
                    cmd.Parameters.Add("@faktur", MySqlDbType.VarChar).Value = strArr(3).ToString
                    cmd.Parameters.Add("@no_mobil", MySqlDbType.VarChar).Value = strArr(4).ToString
                    cmd.Parameters.Add("@nama_supir", MySqlDbType.VarChar).Value = strArr(5).ToString
                    cmd.Parameters.Add("@stik_mobil", MySqlDbType.VarChar).Value = strArr(6).ToString
                    cmd.Parameters.Add("@jml_liter", MySqlDbType.VarChar).Value = strArr(7).ToString
                    cmd.Parameters.Add("@tanggal", MySqlDbType.Date).Value = strArr(8).ToString
                    cmd.Parameters.Add("@jam", MySqlDbType.VarChar).Value = strArr(9).ToString
                    cmd.ExecuteNonQuery()
            End Select
        End If
    End Sub
3.koding untuk mengirim responds ke pengirim
  Private Sub DoReadData(ByVal result As IAsyncResult)
        Dim info As ConnectionInfo = CType(result.AsyncState, ConnectionInfo)
        Try
            'If the stream is valid for reading, get the current data and then
            'begin another async read
            If info.Stream IsNot Nothing AndAlso info.Stream.CanRead Then
                info._LastReadLength = info.Stream.EndRead(result)
                For index As Integer = 0 To _LastReadLength - 1
                    info._DataQueue.Enqueue(info._Buffer(index))
                Next

                'The example responds to all data reception with the number of bytes received;
                'you would likely change this behavior when implementing your own protocol.
                info.SendMessage("Received " & info._LastReadLength & " Bytes")

                For Each otherInfo As ConnectionInfo In info.Monitor.Connections
                    If Not otherInfo Is info Then
                        otherInfo.SendMessage(System.Text.Encoding.ASCII.GetString(info._Buffer))
                    End If
                Next

                info.AwaitData()
            Else
                'If we cannot read from the stream, the example assumes the connection is
                'invalid and closes the client connection. You might modify this behavior
                'when implementing your own protocol.
                info.Client.Close()
            End If
        Catch ex As Exception
            info._LastReadLength = -1
        End Try
    End Sub
4.koding untuk menampilkan respond dari penerima
    Private Sub InvokeAppendOutput(ByVal message As String)
        Dim doAppendOutput As New Action(Of String)(AddressOf AppendOutput)
        Me.Invoke(doAppendOutput, message)
    End Sub

Komentar

Posting Komentar

Postingan populer dari blog ini

cara membuat checkbox pada listview vb.net dan dapat di pilih sesuai checkbox yang dipilih

membuat menu jquery bootstrap tanpa reload page

menampilkan data pada power point menggunakan program visual studio 2010