sábado, 11 de abril de 2009

Tirando um print screen da tela.

Olá pessoal,

Abaixo vai um exemplo de como obter o preent screen da tela do usuário. Basta copiar o método abaixo no seu formulário windows e executar quando precisar
.


Referências:

http://social.msdn.microsoft.com/Forums/pt-BR/vsvbasicpt/thread/b82cc605-3ec4-48ba-b865-df39113f9d25/

Jeff Atwood

SendKeys (Class)


private void GetScreenSnapshot(bool activeWindowOnly)
{
if (activeWindowOnly)
{
SendKeys.SendWait("%{PRTSC}");
Image img = (Image)Clipboard.GetDataObject().GetData(DataFormats.Bitmap);
img.Save(@"C:\telaAtiva.jpg");
}
else
{
Rectangle rectangle = Screen.PrimaryScreen.Bounds;
Bitmap bitmap = new Bitmap(rectangle.Right, rectangle.Bottom, PixelFormat.Format32bppArgb);
Graphics graphics = Graphics.FromImage(bitmap);
graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
bitmap.Save(@"C:\telaCompleta.jpg", ImageFormat.Jpeg);
}
}


Considerações:

  • Eu não consegui realizar o print de aplicações console, somente de aplicações windows forms;
  • É necessário tomar muito cuidado onde será utilizado esse tipo de procedimento, pois o usuário pode considerar que sua privacidade esta sendo violada.

Valeu pela ajuda Adnilson.

Nenhum comentário: