aula delphi web

7
UNIVERSIDADE ESTADUAL DO PIAUÍ - UESPI CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CCET COORDENAÇÃO DE CIÊNCIAS DA COMPUTAÇÃO CURSO SEQUÊNCIAL EM REDES DE COMPUTADORES DISCIPLINA: PROGRAMAÇÃO III PROFESSOR: SÉRGIO BARROS DE SOUSA APLICAÇÕES PARA WEB COM DELPHI Delphi x web Com a chegada do servidores WEB ao mundo Windows, alguns fabricantes, como Netscape e Microsoft, resolveram criar API's proprietárias de acesso ao serviço WEB, se utilizando de recursos existentes no Windows para contornarem o principal problema do CGI, que é justamente a natureza de todo programa executável. Um EXE tem que ser carregado na memória, executado em seu próprio espaço de endereçamento e, finalmente encerrado e retirado da memória, isto tudo para cada requisição cliente. Através destas API's o servidor WEB pôde, então, tirar proveito do mecanismo de DLL's do Windows para carregar o ISAPI ou o NSAPI apenas uma vez, no seu próprio espaço de endereçamento. Dessa maneira cada requisição passou a gerar apenas uma nova "thread" ao invés de um processo inteiro. As vantagens desta abordagem sobre o CGI é que os aplicativos se tornam mais rápidos, principalmente no seu tempo de carga, porém passam a depender de um único tipo de servidor WEB - Isso antes do Delphi 3, pois agora o mesmo aplicativo pode, facilmente, se transformar de CGI para ISAPI/NSAPI e vice-versa. Existe um problema com os aplicativos ISAPI ou NSAPI. Como eles rodam no mesmo espaço de endereçamento do servidor WEB, os mesmos só poderão ser substituídos ou apagados quando

Upload: jeffholanda

Post on 17-Feb-2015

20 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Aula Delphi Web

UNIVERSIDADE ESTADUAL DO PIAUÍ - UESPICENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CCETCOORDENAÇÃO DE CIÊNCIAS DA COMPUTAÇÃOCURSO SEQUÊNCIAL EM REDES DE COMPUTADORESDISCIPLINA: PROGRAMAÇÃO IIIPROFESSOR: SÉRGIO BARROS DE SOUSA

APLICAÇÕES PARA WEB COM DELPHI

Delphi x web

Com a chegada do servidores WEB ao mundo Windows, alguns fabricantes, como Netscape e Microsoft, resolveram criar API's proprietárias de acesso ao serviço WEB, se utilizando de recursos existentes no Windows para contornarem o principal problema do CGI, que é justamente a natureza de todo programa executável. Um EXE tem que ser carregado na memória, executado em seu próprio espaço de endereçamento e, finalmente encerrado e retirado da memória, isto tudo para cada requisição cliente.

Através destas API's o servidor WEB pôde, então, tirar proveito do mecanismo de DLL's do Windows para carregar o ISAPI ou o NSAPI apenas uma vez, no seu próprio espaço de endereçamento. Dessa maneira cada requisição passou a gerar apenas uma nova "thread" ao invés de um processo inteiro.

As vantagens desta abordagem sobre o CGI é que os aplicativos se tornam mais rápidos, principalmente no seu tempo de carga, porém passam a depender de um único tipo de servidor WEB - Isso antes do Delphi 3, pois agora o mesmo aplicativo pode, facilmente, se transformar de CGI para ISAPI/NSAPI e vice-versa.

Existe um problema com os aplicativos ISAPI ou NSAPI. Como eles rodam no mesmo espaço de endereçamento do servidor WEB, os mesmos só poderão ser substituídos ou apagados quando o serviço www, ou até mesmo o servidor, estiver fora do ar. Desligar e ligar um servidor WEB não é nada difícil, más se for de produção pode ocasionar problemas.

Para inciar uma aplicação em delphi para web clique em FILE -> NEW -> OTHER

Page 2: Aula Delphi Web

Na guia new inclua um objeto do tipo Web Server Application

Selecione a opção ISAPI/NSAPI Dynamic Link Library

Page 3: Aula Delphi Web

Será aberto um objeto do tipo Web Module instanciado pelo sistema, deve ser observado que não é gerado um source como um aplicativo e sim um projeto de biblioteca já que este é um sistema baseado em dll’s

Selecione o Web module e na guia properties do Object Inspector clique na opção Actions

Page 4: Aula Delphi Web

Será aberto um editor de actions e nesse editor será adicionado uma nova action a partir da opção.

Ao ser adicionada uma nova action, clique na guia events do object inspector e selecione o evento OnAction,

Será criada uma procedure no editor de código referente a ação adicionada, a resposta dessa ação será o conteúdo do arquivo gerado e apr5esentada na tela do browser, permitido a partir da linha de comando que deve ser adicionada

Begin Response.content := ‘Frase apresentada no browser padrão’;end;

para criação do arquivo de saída, esta deve ser adirecionada a partir da opção Project -> Options

Page 5: Aula Delphi Web

Na caixa Project Options selecione a guia Directories/conditionals e na caixa Output directory insira o caminho do diretório c:\web (Este diretório deve ser criado antes do início do projeto e os arquivos do sistema não são obrigatoriamente salvos nesta pasta, mas deve se ter em mente que deve ser criado um diretório virtual no servidor web direcionado para a pasta c:\web a qual será referenciado pelo endereço no browser – nota de aula).

Page 6: Aula Delphi Web

Os arquivos dll criados podem ser chamados a partir de uma tag <a> em um arquivo html ou então pelo próprio nome, lembrando que dll´s são permitidas a partir de servidores em plataformas windows

Sérgio Barros de Sousa