ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Console Delphi

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
Netrunner
Aprendiz
Aprendiz


Registrado: Domingo, 7 de Julho de 2013
Mensagens: 236

MensagemEnviada: Qui Dez 05, 2013 8:34 pm    Assunto: Console Delphi Responder com Citação

estou com curiosidades sobre o metodo de console no delphi..
criei uma aplicação só pra testes, porem não sei como fazer para o console não fechar quando apertar enter ou terminar uma ação..

estou usando o readln; no final do codigo , porem quando aperta qualquer tecla ele fecha.


Código:
program Console;

{$APPTYPE CONSOLE}

{$R *.res}

uses
 System.SysUtils, System.Classes, Data.DB, ZAbstractRODataset,
  ZAbstractDataset, ZDataset, ZAbstractConnection, ZConnection,
  System.Win.ScktComp,Winapi.Windows, Winapi.Messages, System.Variants, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ComCtrls, Vcl.Buttons,shellapi,
  IdBaseComponent, IdComponent, IdRawBase, IdRawClient, IdIcmpClient,Inifiles;





var
Configuration:TIniFile;
DB:TZConnection;
Query:TZQuery;
Accounts: TStringList;
begin
  try

  Query:= TZQuery.Create(nil);
  Configuration:= TIniFile.Create('.\Config.ini');
  DB:= TZConnection.Create(nil);
  Query.Connection:= DB;
  DB.Protocol:= 'mysql';
  DB.Port:= 3306;
  DB.HostName:= Configuration.ReadString('DB','Host','');
  DB.Password:= Configuration.ReadString('DB','Password','');
  DB.User:=  Configuration.ReadString('DB','Login','');
  DB.Database:= Configuration.ReadString('DB','DB','');
  DB.Catalog:= Configuration.ReadString('DB','DB','');
  try
  DB.Connect;
  Writeln('Fazendo conexao com a database da plataforma..');
  Accounts:=TStringList.Create;
  Query.SQL.Clear;
  Query.SQL.Text:= 'SELECT * From Accounts';
  Query.Open;
  while not (query.Eof) do begin
  Accounts.Add('Username '+Query.FieldByName('Username').AsString);
  Query.Next;
  end;
  Writeln(Accounts.Text);
  Query.Close;
  Readln;
  except
  on E: Exception do begin
  Writeln('Falha ao conectar com a database '+e.Message);
  readln;
  end;
  end;

  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.



como fazer isso sem usar o readln no final de cada codigo..
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
r.skol@live.com
Novato
Novato


Registrado: Sexta-Feira, 6 de Dezembro de 2013
Mensagens: 19

MensagemEnviada: Sex Dez 06, 2013 2:42 pm    Assunto: Responder com Citação

cria um loop com while
exemplo:

Código:


begin

while true do
  begin
    writeln('batata');
    readln;
  end;
end;

end.



"while true do" faz o código se repetir eternamente, ou seja, no meu exemplo, ao apertar enter, o programa não vai fechar, ele vai escrever batata de novo na tela, até que eu feche o programa

Espero ter ajudado[/code]
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB