Usuário com melhor resposta
Download Upload Cliente servidor

Pergunta
-
Oi galera tudo bem ? Bom com a ajuda de todos vcs eu fiz meu cliente servidor em vb.net usando tcp/ip bom eu estava programando de boa sem problemas mais fiquei com uma duvida aqui na cabeça se o cliente e o servidor ficam conectados entre eles fazem o download e o upload de conexão bom eu queria saber como capturar o download e o upload da conexão do cliente servidor quando estão conectados para ser exibido em uma label mais não faço a ideia de como seria isso para capturar bom venho pedir ajuda a vcs para me darem dicas ou exemplos para que eu possa começar a fazer o codigo obrigado a todos e vlw.... se possivel em vb.net obrigado
Respostas
-
Olá GVGVGV,
Tudo bem?
Poderia postar o que você fez e explicar em qual ponto você tem dúvida no que está tentando fazer?
Digo isso por que o fórum seria para auxiliar os usuários com problemas/erros que estejam ligados ao produto Microsoft ou as linguagens de programação criadas pela Microsoft, quando você informa que quer algo e espera que alguém te forneça um código ou ensine a programar o que você não sabe, você está fugindo do padrão do fórum. Não falo você especificamente, mas sim qualquer usuário do fórum que venha a fazer isso. O Fórum não presta suporte "How to", ou seja não é como alguns fóruns por exemplo que são focados em ensinar programação. Mas caso já tenha o código é só postar e explicar em qual parte do código está o erro que o impede de fazer o que precisa.
Obrigado por sua participação.
Marcos Roberto de Souza Junior
Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Marcos SJ sexta-feira, 30 de outubro de 2015 15:04
- Não Marcado como Resposta João Paulo [] quinta-feira, 24 de novembro de 2016 23:21
- Marcado como Resposta João Paulo [] domingo, 19 de fevereiro de 2017 19:28
Todas as Respostas
-
Não sei como você implementou esta funcionalidade, mas precisa gerenciar a quantidade de dados transmitidos em variáveis.
Acredito que dependendo da classe que você está utilizando possa existir algum método que retorna estas estatísticas.
Pode dar mais detalhes do projeto?
-
É apenas um cliente servidor basico onde os dois se comunicam usando um chat. Só que eu queria por em uma label, mostrando essa taxa de download e upload que os dois fazem entre si quando estao conectados, enviado e recebendo dados. Muito obrigado pela sua ajuda amigo
- Editado Marcos SJ terça-feira, 6 de outubro de 2015 17:18 Edição
-
Olá GVGVGV,
tudo bem?
Conseguiu uma solução para o seu problema?
Atencisoamente
Marcos Roberto de Souza Junior
Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
-
Olá GVGVGV,
Tudo bem?
Poderia postar o que você fez e explicar em qual ponto você tem dúvida no que está tentando fazer?
Digo isso por que o fórum seria para auxiliar os usuários com problemas/erros que estejam ligados ao produto Microsoft ou as linguagens de programação criadas pela Microsoft, quando você informa que quer algo e espera que alguém te forneça um código ou ensine a programar o que você não sabe, você está fugindo do padrão do fórum. Não falo você especificamente, mas sim qualquer usuário do fórum que venha a fazer isso. O Fórum não presta suporte "How to", ou seja não é como alguns fóruns por exemplo que são focados em ensinar programação. Mas caso já tenha o código é só postar e explicar em qual parte do código está o erro que o impede de fazer o que precisa.
Obrigado por sua participação.
Marcos Roberto de Souza Junior
Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Marcos SJ sexta-feira, 30 de outubro de 2015 15:04
- Não Marcado como Resposta João Paulo [] quinta-feira, 24 de novembro de 2016 23:21
- Marcado como Resposta João Paulo [] domingo, 19 de fevereiro de 2017 19:28
-
OK sim claro amigo Boa tarde ?
Bom, na verdade é como eu disse la em cima, queria capturar o download e o uploader da conexão de um cliente servidor feito em tcp/ip. Só que não sei por onde começar, eu sei que tenho que capturar os baytes da conexao e transformar em strings, só que nao sei em que ponto do codigo fazer isso. Bom, meu cliente servidor é um pouco grande, então vou postar aqui apenas o cliente para que vcs possam dar uma olhada e me dizer por onde eu começo. Obrigado também amigo pela ajuda.
:)
Código abaixo do cliente feito em tcp/ip /Cliente servidor esse é apenas o cliente:
Imports System.Net Imports System.Net.Sockets Imports System.Text Imports System.IO Public Class SocketClient 'conezao tcp/ip cliente servidor Private C As TcpClient Public Event Connected() Public Event Disconnected() Public Event Data(ByVal b As Byte()) Private IsBuzy As Boolean = False Public Function Statconnected() As Boolean Try If C.Client.Connected = True Then Return True Else Return False End If Catch ex As Exception End Try End Function Sub Connect(ByVal h As String, ByVal p As Integer) Try Try If C IsNot Nothing Then C.Close() C = Nothing End If Catch ex As Exception End Try Do Until IsBuzy = False Threading.Thread.Sleep(1) Loop Try C = New TcpClient C.ReceiveTimeout = -1 C.SendTimeout = -1 C.SendBufferSize = 999999 C.ReceiveBufferSize = 999999 C.Client.SendBufferSize = 999999 C.Client.ReceiveBufferSize = 999999 C.Connect(h, p) Dim t As New Threading.Thread(AddressOf RC, 1) t.Start() RaiseEvent Connected() Catch ex As Exception End Try Catch ex As Exception RaiseEvent Disconnected() End Try End Sub Private SPL As String = "pass" 'split packets / senha de conexao cliente servidor tcp/ip Sub DisConnect() Try C.Close() Catch ex As Exception End Try C = Nothing RaiseEvent Disconnected() End Sub Sub Send(ByVal s As String) Send(SB(s)) End Sub Sub Send(ByVal b As Byte()) Try Dim m As New MemoryStream m.Write(b, 0, b.Length) m.Write(SB(SPL), 0, SPL.Length) C.Client.Send(m.ToArray, 0, m.Length, SocketFlags.None) Catch ex As Exception DisConnect() End Try End Sub Private Sub RC() IsBuzy = True Dim M As New MemoryStream Dim cc As Integer = 0 re: Threading.Thread.Sleep(1) Try If C Is Nothing Then GoTo co Else If C.Client.Connected = False Then GoTo co Else cc += 1 If cc > 100 Then cc = 0 Try If C.Client.Poll(-1, Net.Sockets.SelectMode.SelectRead) And C.Client.Available <= 0 Then GoTo co End If Catch ex As Exception GoTo co End Try End If End If End If If C.Available > 0 Then Dim B(C.Available - 1) As Byte C.Client.Receive(B, 0, B.Length, Net.Sockets.SocketFlags.None) M.Write(B, 0, B.Length) rr: If BS(M.ToArray).Contains(SPL) Then Dim A As Array = fx(M.ToArray, SPL) RaiseEvent Data(A(0)) M.Dispose() M = New MemoryStream If A.Length = 2 Then M.Write(A(1), 0, A(1).length) Threading.Thread.Sleep(1) GoTo rr End If End If End If Catch ex As Exception GoTo co End Try GoTo re co: IsBuzy = False DisConnect() End Sub End Class Module sockts Function SB(ByVal s As String) As Byte() 'string to byte() On Error Resume Next Return Encoding.Default.GetBytes(s) End Function Function BS(ByVal b As Byte()) As String 'byte() to string On Error Resume Next Return Encoding.Default.GetString(b) End Function Function fx(ByVal b As Byte(), ByVal WRD As String) As Array 'split bytes On Error Resume Next Dim a As New List(Of Byte()) Dim M As New MemoryStream Dim MM As New MemoryStream Dim T As String() = Split(BS(b), WRD) M.Write(b, 0, T(0).Length) MM.Write(b, T(0).Length + WRD.Length, b.Length - (T(0).Length + WRD.Length)) a.Add(M.ToArray) a.Add(MM.ToArray) M.Dispose() MM.Dispose() Return a.ToArray End Function End Module
- Editado Marcos SJ quinta-feira, 22 de outubro de 2015 12:15 Edição