Integrando saídas de comandos shell com sua aplicação Kylix

Nesse artigo irei mostrar como executar um programa qualquer e pegar o retorno dele, tudo de dentro da sua aplicação feita no Kylix.

[ Hits: 9.993 ]

Por: Anderson Lazzari em 12/03/2004


Introdução



Pra começar crie uma nova aplicação, instancie no form um botão e um memo.

No início do código fonte da aplicação, defina o uso da API Libc na cláusula "uses":

uses
  SysUtils, Types, Classes, QGraphics, QControls, QForms, QDialogs, QStdCtrls, Libc;

Dê um duplo clique no botão e vamos começar a programar! Adicione o seguinte código ao evento de clique no botão:

procedure TForm1.Button1Click(Sender: TObject);
var
  Processos : PIOFile;
  Linha : Array[0..254] of Char;
  begin
  Processos := popen(pchar(ls -lah), 'r');
  while fgets(Linha,255,Processos) <> nil do begin
      Memo1.lines.add( Trim( String(Linha) ) );
  end;
  pclose(Processos);
end;

Pronto! Ao executar a aplicação poderemos ver o conteúdo da saída do comando "ls -lah" no memo.

Os comandos que nos permitiram isso foram o popen(), que executa o comando em si e o Memo1.lines.add(), que para cada linha da saída do comando adicionou uma linha ao objeto Memo1. Simples né?

Um abraço,
Anderson Lazzari

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Cross-compile Lazarus: Gerando executáveis Win32 estando no Linux

Aprendendo a modelar forms no Kylix

Criando aplicação para detectar informações do sistema em Kylix

TCollection e Generics no Free Pascal - Uma breve visão sobre lista de objetos com o Lazarus

Criando uma aplicação que mostra os processos em execução

  
Comentários
[1] Comentário enviado por josir em 13/03/2004 - 21:36h

Muito bom! Simples, curto e ÚTIL!
Sugestão: publique o seu artigo no delphi3000.com - a gente tem que publicar bastante coisa em Kylix para que a Borland saiba que a comunidade está se movimentando.

[2] Comentário enviado por otto em 14/03/2004 - 13:38h

é pessoal, vamos dar continuidade a essa comunidade, pq a turma(da Borland) ta esquecendo o Kylix... e assim nao pode...

[3] Comentário enviado por genioloco em 17/10/2004 - 03:30h

Este artigo veio a calhar com o que estou aprendendo agora (Kylix+Shell). Tá muito louco!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts