Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin
Composition Setup
import.css=/download/attachments/327912/newLayout.css
Portuguese

Pagetitle
TSocketClient
TSocketClient

Classe: TSocketClient

Estabelece uma conexão client de socket do tipo TCP genérica.Através desta classe, é possível enviar e receber dados por meio de um socket genérico e utilizar como base para implementação de protocolo não suportado pela aplicação.



New

New

Cria o objeto TSocketClient sem conexão ativa.


TSocketClient(): New ( ) --> oRetorno

    oRetorno()
  • Retorna um objeto do tipo TSocketClient.

CloseConnection

Encerra a conexão TCP genérica (socket) do objeto corrente.


TSocketClient(): CloseConnection ( ) -->

Connect

Estabelece uma conexão TCP genérica (socket).


TSocketClient(): Connect ( < nPorta>, < cIP>, < nTimeout> ) --> nRetorno


NomeTipoDescriçãoObrigatórioReferência
nPortaNuméricoIndica o número da porta onde a conexão será realizada. X
cIPCaracterIndica o número IP ou nome do servidor onde a conexão será realizada. X
nTimeoutNuméricoIndica o número em milissegundos onde o método deve esperar para conectar. X
    nRetorno()
  • Retorna 0 (zero) se conectar com sucesso; caso contrário, a conexão falhou.

GetError

Permite recuperar um código e uma string correspondendo à ultima ocorrência do Socket client registrada em caso de falha.


TSocketClient(): GetError ( ) --> cRetorno

    cRetorno(caracter)
  • Retorna um código e uma string que corresponde à última ocorrência de SocketClient registrada em caso de falha. Caso não haja nenhuma falha registrada, a função retorna 0 (zero).

Método disponível em build superior a 7.00.101202A.

IsConnected

Verifica se existe conexão válida no objeto corrente.


TSocketClient(): IsConnected ( ) --> lRetorno

    lRetorno(logico)
  • Retornar verdadeiro (.T.), se a conexão estiver ativa, ou falso (.F.), caso esteja inválida/desconectado.

Receive

Recebe qualquer tipo de dado pela conexão ativa do objeto.


TSocketClient(): Receive ( < cBuffer>, < nTimeout> ) --> nRetorno


NomeTipoDescriçãoObrigatórioReferência
cBufferCaracterIndica o buffer que contém os dados a serem recebidos. X
nTimeoutNuméricoIndica o tempo em milissegundos, que o método receive aguarda, para receber algum dado pela conexão. X
    nRetorno()
  • Retorna a quantidade de bytes recebidos. Caso ocorra algum erro, a quantidade recebida será menor que zero.

Reset

Encerra a conexão sem avisar o outro lado.


TSocketClient(): Reset ( ) -->


Utilize este método somente em casos extremos.

Send

Transmite o buffer pela conexão TCP genérica ativa.


TSocketClient(): Send ( [ cBuffer] ) --> nRetorno


NomeTipoDescriçãoObrigatórioReferência
cBufferCaracterIndica a buffer que contém os dados que serão transmitidos pela conexão.
    nRetorno()
  • Retorna o número de bytes transmitidos. Caso o número seja diferente do tamanho especificado, no parâmetro cBuffer, algum erro aconteceu.

//Neste exemplo, observe a utilização de um cliente socket, note que para o programa funcionar corretamente, deve-se alterar os parâmetros da conexão.user function MySocketLocal oObj := tSocketClient():New()nResp := oObj:Connect( 999, "172.255.255.255", 1000 ) if(nResp == 0 )   Conout( "Conexão OK!" )else   Conout( "Erro na Conexão OK! ", nResp  )   returnendifcSend = "Ola!!!! Estou transmitindo um dado!"nResp := oObj:Send( cSend )if( nResp != len( cSend ) )                 conout( "Erro! Dado nao transmitido" )else  conout( "Dado Enviado" )endifcBuffer := ""nQtd = oObj:Receive( cBuffer, 10000 ) if( nQtd >= 0 )    conout( "Dados Recebidos " + Str( nQtd, 4, 0 ), cBuffer )else    conout( "Nao recebi nada" )endifcSend = "Dados que será transmitido!!!"nResp := oObj:Send( cSend )if( nResp != len( cSend ) )                   conout( "Erro! Dado nao transmitido" )else    conout( "Dado Enviado" )endifif( oObj:IsConnected() )    conout( "OK! Estou conectado" )else    conout( "Ops! Nao estou conectado" )endifoObj:CloseConnection()if( !oObj:IsConnected() )    conout( "Desconectei" )else    conout( "Ainda estou conectado, erro na desconexao" )endif                   return

Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server