Mudar imagem capturada no desktop
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.
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
Curtidas 0
Respostas

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
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!!!!
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
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 ?
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
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
10/01/2008
Quero negar, de forma que consiga proteger até contra essa função que coloquei ai acima.
GOSTEI 0

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
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
10/01/2008
Cadê o pessoal do forum ?
Gostaria de contar com a colaboração de vocês.
No aguardo.
Gostaria de contar com a colaboração de vocês.
No aguardo.
GOSTEI 0