Mudar imagem capturada no desktop

Delphi

10/01/2008

Ai pessoal vai mais um desafio.

Quero que minha aplicação seja capturada por nenhum programa enquanto estiver aberta.

Como eu poderia fazer isso ?
Teria como eu mudar ao capturar, enviar uma imagem toda preta
igual o Nero Show Time faz. Quando ele toca um DVD e eu tento capturar a tela, ele salva uma imgam preta.

Valeu e abraço a todos.


Gratao

Gratao

Curtidas 0

Respostas

Gratao

Gratao

10/01/2008

Ai pessoal vai mais um desafio. Quero que minha aplicação não seja capturada por nenhum programa enquanto estiver aberta. Como eu poderia fazer isso ? Teria como eu mudar a imagem ao capturar a tela da minha aplicação e enviar uma imagem toda preta igual o Nero Show Time faz. Quando ele toca um DVD e eu tento capturar a tela, ele salva uma imagem preta. Valeu e abraço a todos.



GOSTEI 0
Onjahyr

Onjahyr

10/01/2008

Tem como sim!
Mas qto ao Nero, eu copio sem problema, depende de como vc está copiando. Se for com a tecla [b:3ad088f385]PrintScreen[/b:3ad088f385] do teclado (muito arcaico) o Nero pode capturar esta tecla e enviar ´Key=#0´ ou enviar uma tela preta para o ClipBoard.
Você pode colocar um Timer e a toda hora excluir o conteúdo do ClipBoard, mas isso de Timer faz o aplicativo ficar num LOOP e não é muito bom. Pode ser que você, atravez da API fique capturando as mensagens do CLipBoard e qdo chegar alguma coisa lá vc destruir. Mas veja bem, vc pode impedir do cara copiar um arquivo ou um texto de outros programas e isso vai irritar o cara!!!!


GOSTEI 0
Gratao

Gratao

10/01/2008

Mas tem outras formas que o delphi captura a tela.
Ex:
procedure TForm1.Button1Click(Sender: TObject);
Var
theDC : HDC;
begin
Form1.Visible := false;
theDC := GetWindowDC(GetDesktopWindow);
Image1.Canvas.Handle := theDC;
Form1.Visible := true;
end;

Como eu poderia fazer para quando ele capturar, eu enviar outra imagem no lugar ?


GOSTEI 0
Onjahyr

Onjahyr

10/01/2008

Ahhh, vc quer que seu programa capture imagens ou quer negar que outros programas capturem as telas do seu programa?


GOSTEI 0
Gratao

Gratao

10/01/2008

Quero negar, de forma que consiga proteger até contra essa função que coloquei ai acima.


GOSTEI 0
Onjahyr

Onjahyr

10/01/2008

Da maneira que eu conheço só vc dando um loop e limpando o clipboard (clipboard é onde são armazenados todas as imagens, texto, etc. no buff do windows antes de serem enviados para outros programas)


GOSTEI 0
Gratao

Gratao

10/01/2008

Alguém saberia me dizer uma outra forma de proteger minha aplicação, contra o print screen e contra programas que capturam o desktop ?


GOSTEI 0
Gratao

Gratao

10/01/2008

Cadê o pessoal do forum ?
Gostaria de contar com a colaboração de vocês.

No aguardo.


GOSTEI 0
POSTAR