Delphi Write na tela do DOS (prompt de comando)

23/04/2020

0

Ola tenho um programinha que recebe um parametro na prompt de comando:
por exemplo:
.
C:\>Aplicacao.EXE Parametro1
.
Gostaria de poder retornar um resultado no proprio prompt de comando:
por exemplo:
.
C:\>Aplicacao.EXE Parametro1
Parametro recebido com sucesso...
C:\>

Acredito que exista como fazer isso, mas não encontrei nada, alguém saberia me dizer?
Alberto

Alberto

Responder

Posts

23/04/2020

Emerson Nascimento

como você não apresentou o source-code do programa, veja o tópico abaixo te ajuda:

https://www.devmedia.com.br/voce-sabia/994

Responder

24/04/2020

Alberto

Obrigado por responder.

Testei com a diretiva {$APPTYPE CONSOLE} e funciona a função Writeln diretamente no console (prompt de comando).
Porém ao incluir a diretiva (como é uma diretiva de compilação), a janela (prompt de comando) abre automaticamente ao executar a aplicação.
.
A minha aplicação é visual e já esta pronta, porém eu gostaria de implementar nela uma procedure que só será
executada, quando a aplicação detectar que foi passado um parametro.
(nesse caso eu já estaria executando a aplicação de uma janela DOS (prompt de comando) e é ai que gostaria de usar o writeln)
.
-Executar aplicacao no windows (sem parametros)
Clico no icone, executa, abre a aplicacao no modo GUI
.
-Executar a aplicação no PROMPT de COMANDO (com parametros)
C:\\>Aplicação.EXE Parametro1 (executa a procedure especifica)
C:\\>Parametro recebido com sucesso (retorno da aplicação: enviado pela Writeln)
-Sai da aplicação.

Resumindo, eu precisaria controlar em Runtime o uso do CONSOLE


Responder

03/05/2020

Psychlo

em qualquer parte do codigo...
var
x: String;
begin
AllocConsole;

Writeln('test..');

Readln(x);

ShowMessage(x);

FreeConsole;
end;
Responder

04/05/2020

Alberto

Obrigado por responder.
O AllocConsole até funciona, porém não da maneira que eu preciso.
.
Pois quando executo a aplicação com parametro
eu já estou em uma tela do PROMPT de COMANDO
.
O AllocConsole abre uma segunda tela, o que não é interessante
.
O que eu precisaria é algo como capturar o Handle
da Janela do PROMPT de Comando que executou a aplicação.
e então enviar o WriteLn nessa janela.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar