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

Esse artigo vai ensinar a criar uma aplicação no qual o usuário obterá algumas informações do sistema, tais como: processador, fabricante, velocidade, cache, etc.

[ Hits: 13.381 ]

Por: Perfil removido em 05/01/2004


Criando as procedures



Agora vamos programar:

Primeiramente vamos criar uma procedure privada com as variáveis nos quais servirão para tabular as informações.

private
  { Private declarations }  
  procedure QuebraLinha(Linha : String; var Info, Valor :  
  String);  

Vamos voltar a procedure onCreate:

procedure TForm1.FormCreate(Sender: TObject);  
const  
  Nomes : Array[1..5] of String = ('model name', 'vendor_id',  
    'cpu MHz', 'cache size', 'bogomips');  
var  
  Info, Valor : String;  
  i : Integer;  

  CpuInfo : PIOFile;  
  Linha : Array[0..254] of Char;  
begin  
// abre o arquivo /proc/cpuinfo para leitura
  CpuInfo := fopen('/proc/cpuinfo', 'r');  
  try  
// processa o arquivo enquanto carrega as informações  
    while fgets(Linha,255,CpuInfo) <> nil do begin  
// realiza tabulação entre o dado da informação e seu valor  
      QuebraLinha(String(Linha), Info, Valor);  
// verifica os valores das informações levantadas  
      for i := 1 to 5 do  
        if Info = Nomes[i] then  
// se estiver de acordo preenche o label com o valor  
          TLabel(FindComponent('label'+IntToStr(i))).Caption :=  
            Valor;  
    end;  
  finally  
    fclose(CpuInfo);  
  end;  
end;  
  
procedure TForm1.QuebraLinha(Linha: String; var Info,  
  Valor: String);  
var  
  PosAtu : Integer;  
begin  
// determina posição do sinal de :  
  PosAtu := Pos(':', Linha);  
  if PosAtu > 0 then begin  
// a linha tem : - quebra a parte anterior e joga em Info  
//    a parte posterior é colocada em Valor  
    Info := Trim(Copy(Linha,1,PosAtu-1));  
    Valor := Trim(Copy(Linha,PosAtu+1,Length(Linha)));  
  end  
  else begin  
// a linha não tem : - Info tem a linha toda e  
//    Valor é uma string em branco  
    Info := Linha;  
    Valor := '';  
  end;  
end;  

end.

Beleza amigos, agora é só compilar e visualizar as configurações do seu sistema!

-----------------------------
Viva a liberdade dos Códigos
-----------------------------
Master_foca.

Página anterior    

Páginas do artigo
   1. Construindo o formulário
   2. Criando as procedures
Outros artigos deste autor

Configurando o aMSN para Lan House e/ou Cyber Café

CentOS 5 - Utilizando como desktop com o Fluxbox

Rodando o macOS com Docker, qemu, e KVM

As novidades do Java 1.5

Conheça o Project Bossanova

Leitura recomendada

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

Como fazer seu programa Kylix chamar uma aplicação externa

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

Colocando aplicação Kylix no TrayIcon do KDE

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

  
Comentários
[1] Comentário enviado por removido em 06/01/2004 - 04:24h

Parabéns pelo artigo :)

[2] Comentário enviado por nico_di_mafre em 03/09/2004 - 15:19h

Legal este seu artigo, muito bom!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts