ocultar programas ativos?

Delphi

30/05/2006

Boa noite Programadores!

estou com um problema. eu tenho uma rotina que minimiza qualquer programa ativo no windows...

só que eu tenho agora de esconde-los da barra de tarefa do windows e posteriormente mostra-los novamente.

alguém tem algo p/ me ajudar/


Crcam

Crcam

Curtidas 0

Respostas

Orlando Frade

Orlando Frade

30/05/2006

procedure MostraEsconde(visible: boolean);
var
programa: HWND;
begin
programa := FindWindow(nil, ´Caption do Programa´);
if visible then
ShowWindow(programa, SW_RESTORE)
else
ShowWindow(programa, SW_HIDE);
end;


GOSTEI 0
Crcam

Crcam

30/05/2006

pelo que entendi ai eu tenho de especificar o nome do programa é isso?


GOSTEI 0
Orlando Frade

Orlando Frade

30/05/2006

isso mesmo .. vc tem q colocar o caption da janela
vc queria fazer como?


GOSTEI 0
Crcam

Crcam

30/05/2006

na verdade não é um programa especifico mas sim todos que tiverem ativos no momento

eu tenho uma rotina que minimiza tudo que estiver ativo no windows ai quero esconder eles e posterior mente restaurar ou seja não tenho como saber no momento o nome do programa ativo...

tem de ser algo esconder geral


GOSTEI 0
Orlando Frade

Orlando Frade

30/05/2006

poste a rotina d minimizar tudo.


GOSTEI 0
Crcam

Crcam

30/05/2006

não tem segredo ...

pesquise no seu windows o arquivo Mostrar área de trabalho.scf
copie ele na pasta de seu projeto.

crie um botão e coloque
shellexecute(handle,´open´,´Mostrar área de trabalho.scf´,nil,nil,sw_show);

declare nas uses
shellapi

e pronto...


GOSTEI 0
Paullsoftware

Paullsoftware

30/05/2006

[quote:773cd1cb35=´Orlando Frade´]poste a rotina d minimizar tudo.[/quote:773cd1cb35]

Tem um artigo muito simples no site da ClubeDelphi que mostra como minizar todas as janelas abertas...

segue o código do mesmo
uses ShlObj;
…
procedure Shell_MinimizeAll;
var
  Shell: OleVariant;
begin
  Shell := CreateOleObject(´Shell.Application´) ;
  Shell.MinimizeAll;
end;


Esse é o que eu uso para minizar...
procedure MinimizaTudo;
begin
keybd_event(VK_LWIN, 0, 0, 0);
keybd_event(Ord(´D´), 0, 0, 0);
keybd_event(VK_LWIN, 0, KEYEVENTF_KEYUP, 0);
end;

Espero ter ajudado, um abraço :wink:


GOSTEI 0
Crcam

Crcam

30/05/2006

o duro não é minimizar o duro é esconder!!!!


GOSTEI 0
POSTAR