Universidade do Vale do Paraíba
Colégio Técnico Antônio Teixeira Fernandes
Disciplina
Ferramenta de Desenvolvimento Rápido de
Aplicação
Material IV-Bimestre
Conceitos do protocolo TCP/IP
Aplicações http, ftp, smtp, pop3 e socket
site: http://www1.univap.br/~wagner
Prof. Responsável
Wagner Santos C. de Jesus
O que vem a ser um protocolo ?
Vem a ser a regra na qual os programas
que administram como as informações
enviadas por uma rede irão se comportar. no
momento de sua transmissão.
TCP/IP
Protocolo de controle de transmissão,
IP(Internet protocol). É um dos protocolos
mais usados e conhecidos no mundo. Nada
mais é do que um conjunto de programas
capaz de transmitir informações em uma
rede de computadores.
TCP/IP
O conjunto de protocolos TCP/IP é um conjunto de
protocolos de comunicação entre computadores em rede.
Seu nome vem dos dois protocolos mais importantes do
conjunto: o TCP (Transmission Control Protocol Protocolo de Controle de Transmissão) e o IP (Internet
Protocol - Protocolo de Interconexão). O conjunto de
protocolos pode ser visto como um modelo de camadas,
onde cada camada é responsável por um grupo de tarefas,
fornecendo um conjunto de serviços bem definidos para o
protocolo da camada superior. As camadas mais altas estão
logicamente mais perto do usuário (chamada camada de
aplicação), e lidam com dados mais abstratos, confiando
em protocolos de camadas mais baixas para tarefas de
menor nível de abstração.
TCP/IP é um protocolo bem sucedido
no tratamento das rede do tipo WAN.
Web Area Network - Redes que
trabalham na comunicação de
computadores
em
longas
distâncias. Exemplo : Internacional
Network Computer. (Internet).
OSI (Open System Interconnect)
Vem a ser o modelo criado para padronizar
as redes de comunicação para que
computadores do mundo inteiro pudessem
se comunicar.
Modelo - OSI
Consiste de quatro camadas:
TCP/IP
Aplicação
Transporte
Rede
Física
“Comunicação em uma rede”
Para se comunicar em uma rede de
computadores e necessário um receptor e
um transmissor e um meio de transmissão
que chamamos de rede. (Cliente/Servidor).
Funcionamento da rede (TCP/IP)
Sistema Operacional
Programas
Protocolos do padrão (TCP/IP)
Bytes
Hardware (Placas de rede, Cabos e Processadores)
Os programas que atuam na
camada de aplicação.
• HTTP - Protocolo de transmissão de
hipertexto.
• FTP - Protocolo de transmissão de arquivos.
• Socket - Cova ou porta de transmissão de
dados.
• Smtp - Protocolo de transmissão de
mensagens de servidor.
• Pop3 (Post Office Protocol) - Protocolo de
recepção de mensagens.
Criando um Browser.
WebBrowser (Paleta Internet)
Permite a criação de um navegador web
com todas as suas funcionalidades.
Sintaxe :
WebBrowser.método();
Exemplo: Navigate()
Carrega um página no corpo do browser especificada pela URL.
Exemplo :
WebBrowser1.Navigate(‘http://www1.univap.br/~wagner’);
ou
WebBrowser1.Navigate(‘c:\diretorio\teste.html’);
Offline
Permite habilitar o browser para navegação
“Offline” ou “Online”.
Exemplo :
WebBrowser1.Offline := true;
Obs: Este exemplo seta a navegação para ser
feita sem a conexão na rede. (Offline).
Path
Retorna com o caminho físico da URL
chamada.
Exemplo :
Str1 :=WebBrowser1.Path ;
Obs : A variável Str1 deve ser do tipo String.
LocationName
Retorna com o nome do caminho curto
para URL.
Exemplo :
Str1 :=WebBrowser1.LocationName ;
Obs : A variável Str1 deve ser do tipo String.
LocationURL
Retorna com o nome da URL atual carrega
da no browser. URL(User Resource
Location).
Exemplo :
Str1 :=WebBrowser1.LocationURL;
Obs : A variável Str1 deve ser do tipo String.
GoBack
Volta para página anterior a que foi
chamada.(Voltar).
Exemplo :
WebBrowser1.GoBack;
GoForward
Volta para página posterior a que foi
chamada. (Avançar).
Exemplo :
WebBrowser1.GoForward;
Try except
Permite verificar e fazer o tratamento de
uma exceção ou seja quando ocorre um erro
em tempo de execução do programa.
Exemplo :
Button1.Enabled := True;
try
WebBrowser1.GoBack;
Except
Button1.Enabled := False;
end;
Refresh
Atualiza a página carregada.
Exemplo :
WebBrowser1.Refresh;
Stop
Para a execução de uma URL solicitada.
Exemplo :
WebBrowser1.Stop;
Enviando arquivo de dados
NMFTP
Esse componente permite enviar, capturar,
apagar, renomear arquivos e diretórios em
um
computador
remoto
(servidor),
Encontra-se na paleta FastNet do ambiente.
Atenção
Para se fazer uso das propriedade de
componente FTP é necessário saber que é
obrigatória a autenticação de usuário para
que se possa desenvolver a aplicação
desejada.
Estabelecendo a conexão FTP.
Efetuando Autenticação
NMFTP1.Host := ‘ftp.teste.com’;
NMFTP1.Port := 21;
NMFTP1.Timeout := 5000;
NMFTP1.UserID := ‘teste’;
NMFTP1.Password := ‘senha123’;
Connect
Propriedade que realiza a conexão na rede
com servidor de ftp.
Exemplo :
try
NMFTP1.Connect;
except
On E:Exception do
ShowMessage(E.message);
end
Download
Realiza a copia de um arquivo do servidor.
Sintaxe : NMFTP1.Download( <Arquivo remoto> ,
<Arquivo local>);
Exemplo :
try
NMFTP1.Download( ‘lixo.gif’, ‘lixo2.gif’);
except
end;
Abort
Cancela o processo de download do arquivo.
Sintaxe : NMFTP1. Abort;
Exemplo :
NMFTP1.Abort;
Upload
Realiza a copia para um computador remoto.
Sintaxe : NMFTP1.Upload( <Arquivo Local>,<Arquivo
Remoto>);
Exemplo :
try
NMFTP1.Upload(’lista.gif’, ‘/pasta/lista.gif’);
except
end;
Rename
Muda o nome do arquivo no servidor.
Sintaxe : NMFTP1.Rename( <Nome Antigo> ,
<Novo
Nome>);
Exemplo :
NMFTP1.Rename (‘lista.gif’ , ‘imagem.gif’);
Delete
Apaga um arquivo do servidor.
Sintaxe : NMFTP1.Delete( <Nome Arquivo>);
Exemplo :
NMFTP1.Delete (‘lista.gif’);
SMTP
POP3
Envio de e-mail NMSmtp
disponível paleta FastNet
Permite enviar um e-mail para um
destinatário no servidor. Não existe
autenticação neste objeto por isso se a rede
pedir autenticação significa que você não
possui acesso a enviar mensagens desta
maneira para fora da rede que está
conectado.
Host
Propriedade onde será indicado o
servidor smtp que desejar enviar o email.
Exemplo :
NMSmtp1.Host := ‘smtp.terra.com.br’;
UserID
Propriedade que identifica o usuário
proprietário da conta de e-mail. Port = 25
Exemplo :
NMSmtp1.UserID := ‘jbprado’;
Connect
Método
que
realiza
a
conexão,
especificados o usuário e a servidor.
Exemplo :
NMSmtp1.Connect;
PostMessage
Propriedade faz tratamento das mensagens
que devem ser enviadas pelo servidor smtp.
Sintaxe :
NMSmtp1.PostMessage.métodos/Propriedade;
FromAddress
Especifica o endereço de e-mail de onde a
mensagem será enviada.
Exemplo :
NMSmtp1.PostMessage.FromAddress := ‘[email protected]’;
ToAddress.Add()
Especifica o endereço de e-mail para onde a
mensagem será enviada.
Exemplo :
SM1.PostMessage.ToAddress.Add (’[email protected]');
Subject
Especifica o qual será o assunto que deseja
tratar com o destinatário.
Exemplo :
NMSmtp1.PostMessage. Subject := ‘Reunião do 27-Outubro’;
Date
Data do envio do e-mail.
Exemplo :
NMSmtp1.PostMessage. Date := DateToStr(Now);
Body, Assign()
Propriedade Body especifica qual o que será colocado
no corpo do e-mail.
Método Assign() - Especifica o conteúdo que será
enviado para o e-mail.
Exemplo :
NMSmtp1.PostMessage.Body.Assign(‘Hoje estarei ai às 14h’);
Attachments
Permite determinar se haverá um arquivo ou texto anexo
ao e-mail enviado.
Exemplo :
NMSmtp1.PostMessage.Attachments.Add('c:\fotos\imagem.jpg');
SendMail
Envia o e-mail para o servidor caso não
ocorra nenhuma exceção.
Exemplo :
NMSmtp1. SendMail;
Disconnect
Corta a conexão com servidor de e-mail.
Exemplo :
NMSmtp1. Disconnect;
NMPop3 (Recebendo e-mail)
Possibilita a recepção de um e-mail gravado
no servidor. Propriedade de conexão:
GetMailMessage
Armazena um e-mail do servidor na memória.
Exemplo :
NMPOP31.GetMailMessage(1);
Body
Mostra o corpo
GetMailMessage()
do
e-mail
selecionado
Exemplo :
Memo1.Lines.Assign(NMPOP31.MailMessage.Body);
por
Socket
Vem a ser um protocolo capaz de enviar
dados (mensagens) para um computador
remoto em tempo real. Usando esse tipo de
recurso é possível tratar em tempo real
qualquer informação a ser submetida em
uma rede local ou remota.
Um Socket pode ser encontrado em dois
estados Cliente e Servidor.
ClientSocket
Permite enviar mensagens para o servidor
encontra-se na paleta (Internet).
Obs :
Para enviar uma mensagen para um servidor
é necessário identificar a porta e o número
IP (número de identificação na rede).
Host
A propriedade Host permite enviar a
identificação IP que determina para qual
computador a mensagem será enviada.
Exemplo :
ClientSocket1.Host := ’127.0.0.1’;
Obs : Esse número de IP, não é válido na
rede e sim para máquinas locais.
Port
Cria a porta que servira como transmissor
de dados entre o cliente e o servidor.
Exemplo :
ClientSocket1.Port := 1024;
Active
Realiza a conexão com o servidor
especificado na propriedade Host. Tipo de
valor passado booleano (true, False).
Exemplo :
ClientSocket1.Active :=true;
Exemplo Conexão do Cliente
ClientSocket1.Host := ‘127.0.0.1’;
ClientSocket1.Port := 1024;
ClientSocket1.Active := True;
SendText
O método SendText envia uma informação
para o servidor.
Exemplo :
ClientSocket.Socket.SendText(’Ana: sorri para todos !!!');
ServerSocket(Servidor)
Recebe as mensagens enviadas por um
cliente.
Deverá ser especificada a porta de
comunicação estabelecida pelo cliente.
Exemplo :
ServerSocket1.Port := 1024;
Evento : ServerSocketAccept
procedure TChatForm.ServerSocketAccept(Sender:
TObject;
Socket: TCustomWinSocket);
begin
IsServer := True;
Label1.Caption := 'Connected to: ' +
Socket.RemoteAddress;
end;
RemoteAddress, pega o endereço IP Conectado !!!!
ServerSocket(servidor)
Captura as informações enviadas pelo cliente. A
propriedade (Port) deverá ser a mesma do cliente.
Exemplo :
procedure TChatForm.ServerSocketClientRead(Sender:
TObject; Socket: TCustomWinSocket);
begin
Edit1.Text := Socket.ReceiveText;
end;
Close : Fecha conexão
O método close encerra uma conexão do
cliente com servidor ou ambos.
Exemplo :
ServerSocket.Close;
ClientSocket.Close;
Download

4 Bim - Aplicações usando recursos de