Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Cómo hago una aplicación que oculte otra aplicación en ejecución? (https://www.clubdelphi.com/foros/showthread.php?t=84986)

DSK25 09-01-2014 16:30:39

Cómo hago una aplicación que oculte otra aplicación en ejecución?
 
Hola miembros del club delphi, recurro a ustedes por la siguiente cuestión:

Como podría hacer en C++ Builder para que la aplicación creada oculte aplicaciones que se estén ejecutando, por ejemplo ocultar word, google chrome, para que el usuario no se de cuenta que se están ejecutando, y como luego las haría visibles? :)

ecfisa 09-01-2014 20:51:37

Hola DSK25.

Podes hacer:
Código:

void HideApp(char *AppName)
{
  ShowWindow(FindWindow(NULL, AppName), SW_HIDE);
}

void ShowApp(char *AppName)
{
  ShowWindow(FindWindow(NULL, AppName), SW_SHOW);
}

Ejemplo de uso:
Código:

void __fastcall TForm1::btnHideAppClick(TObject *Sender)
{
  HideApp("Sin título: Bloc de notas");
}


void __fastcall TForm1::btnShowAppClick(TObject *Sender)
{
  ShowApp("Sin título: Bloc de notas");
}

Saludos :)

DSK25 09-01-2014 21:58:09

Gracias ecfisa ^\||/

ecfisa 11-01-2014 18:24:53

Hola DSK25.

De nada :).

Para dar mas claridad lo hice en dos funciones, pero podés unificar la acción en una función:
Código:

void VisibleApp(char *AppName, bool State)
{
  ShowWindow(FindWindow(NULL, AppName), (State == 0) ? SW_HIDE : SW_SHOW);
}

O también definiendo una macro mediante el preprocesador:
Código:

#define VISIBLEAPP(X,Y) ShowWindow(FindWindow(NULL, X),(Y==0) ? SW_HIDE:SW_SHOW)
La llamada para ambos casos respectivamente:
Código:

VisibleApp("Sin título: Bloc de notas", true);
Código:

VISIBLEAPP("Sin título: Bloc de notas", false);
Saludos :)


La franja horaria es GMT +2. Ahora son las 12:51:08.

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