Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Mi aplicación de consola (oculta) (https://www.clubdelphi.com/foros/showthread.php?t=94374)

MaxiDucoli 04-01-2020 19:08:22

Mi aplicación de consola (oculta)
 
Hola, buenas tardes a todos.
Quería saber si hay alguna manera de hacer que al ejecutar mi aplicación de consola, esta misma no muestre la ventana de MS-DOS o CMD o como se llame. En cuestión: Que al hacer doble click en mi EXE, ejecute mi aplicación de consola pero que esta no muestre ninguna ventana.
Se puede hacer eso?

Muchas gracias de ante mano!

escafandra 04-01-2020 19:17:58

Código Delphi [-]
program MyAppDeConsolaInvisible;

//{$APPTYPE CONSOLE}

uses
.......


Saludos.

MaxiDucoli 04-01-2020 23:48:39

Cita:

Empezado por escafandra (Mensaje 535091)
Código Delphi [-]
program MyAppDeConsolaInvisible;

//{$APPTYPE CONSOLE}

uses
.......


Saludos.

:eek::eek::eek:



Me siento un nene que recién está aprendiendo a decir mamà... :D:D:D:D:D:D

Casimiro Notevi 05-01-2020 10:27:05

Todos los días se aprende algo :)

MAXIUM 08-01-2020 21:43:19

¿Pero de todos modos eso ejecutaría una ventana CMD y se vería en pantalla hasta que finalice la ejecución?

Creo que esto ayudaría, aunque de todos modos se vería un abrir y cerrar rápido.

Código Delphi [-]
// Oculta la ventana del ejecutable.
function GetConsoleWindow: HWND; stdcall; external kernel32 name 'GetConsoleWindow';

Begin
     ShowWindow(GetConsoleWindow, SW_HIDE);
     ...
     ...
End;

escafandra 09-01-2020 15:33:10

Cita:

Empezado por MAXIUM (Mensaje 535127)
¿Pero de todos modos eso ejecutaría una ventana CMD y se vería en pantalla hasta que finalice la ejecución?


No.

Al eliminar la linea {$APPTYPE CONSOLE} la aplicación generada no es una aplicación de consola ni tiene ventanas por lo que queda oculta de la vista y tampoco aparece en la barra de tareas. GetConsoleWindow dará como resultado nulo puesto que no hay consola que obtener.




Saludos.

MaxiDucoli 12-01-2020 19:06:12

Cita:

Empezado por escafandra (Mensaje 535135)
No.

Al eliminar la linea {$APPTYPE CONSOLE} la aplicación generada no es una aplicación de consola ni tiene ventanas por lo que queda oculta de la vista y tampoco aparece en la barra de tareas. GetConsoleWindow dará como resultado nulo puesto que no hay consola que obtener.




Saludos.

Eliminar la parte de APPTYPE se usa en SDL/SDL2, no me había dado cuenta en tener en cuenta eso para lo que buscaba.

La de oculta la ventana de consola no la probé por que ya la otra solución me resultó válida.


Muchas gracias!


La franja horaria es GMT +2. Ahora son las 13:26:48.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi