Ir al contenido


Foto

Como obtener PrintScreen de un juego en FullScreen


  • Por favor identifícate para responder
7 respuestas en este tema

#1 Dante

Dante

    Advanced Member

  • Miembros
  • PipPipPip
  • 89 mensajes

Escrito 14 noviembre 2016 - 12:25

Hola

Hace tiempo q estoy buscando la forma de tomarle una foto a un juego en fullscreen y no e encontrado nada. Agradeceria si alguien me pudiera ayudar o decirme el por q no se puede.


  • 0

#2 escafandra

escafandra

    Advanced Member

  • Moderadores
  • PipPipPip
  • 4.006 mensajes
  • LocationMadrid - España

Escrito 14 noviembre 2016 - 12:41

Revisa este tema.

 

 

Saludos.


  • 0

#3 escafandra

escafandra

    Advanced Member

  • Moderadores
  • PipPipPip
  • 4.006 mensajes
  • LocationMadrid - España

Escrito 14 noviembre 2016 - 04:29

A bajo nivel y capturando toplevel windows
 

delphi
  1. const
  2.   CAPTUREBLT = $40000000
  3.  
  4. function CreateCaptureScreen: HBITMAP;
  5. var
  6.   W, H: integer;
  7.   ScreenDC, DC: HDC;
  8.   oldbmp: HBITMAP;
  9. begin
  10.   W:= GetSystemMetrics(SM_CXSCREEN);
  11.   H:= GetSystemMetrics(SM_CYSCREEN);
  12.   ScreenDC:= GetDC(0);
  13.   DC:= CreateCompatibleDC(0);
  14.   Result:= CreateCompatibleBitmap(ScreenDC, W, H);
  15.   oldbmp:= SelectObject(DC, Result);
  16.   BitBlt(DC, 0, 0, W, H, ScreenDC, 0, 0, SRCCOPY or CAPTUREBLT);
  17.   ReleaseDC(0, ScreenDC);
  18.   SelectObject(DC, oldbmp);
  19.   DeleteObject(DC);
  20. end;


Saludos.
  • 1

#4 escafandra

escafandra

    Advanced Member

  • Moderadores
  • PipPipPip
  • 4.006 mensajes
  • LocationMadrid - España

Escrito 14 noviembre 2016 - 04:48

Para conseguir la captura desde el portapapeles, mira esto.

 

Y si prefieres usar la VCL de delphi:


delphi
  1. uses Clipbrd;
  2.  
  3. procedure CaptureFromClipboard
  4. var
  5. Handle: THANDLE;
  6. Bitmap: TBitmap;
  7. begin
  8. Handle:= ClipBoard.GetAsHandle(CF_BITMAP);
  9. if Handle <> 0 then
  10. begin
  11. Bitmap:= TBitmap.Create;
  12. Bitmap.LoadFromClipboardFormat(CF_BITMAP, Handle, 0);
  13. Bitmap.SaveToFile('c:\MyBmp.bmp');
  14. Bitmap.Free;
  15. end;
  16. end;

Saludos.


  • 1

#5 Dante

Dante

    Advanced Member

  • Miembros
  • PipPipPip
  • 89 mensajes

Escrito 18 noviembre 2016 - 03:43

Hoy probe el codigo en un juego y me sige dando el mismo problema, cuando estoy dentro del juego en pantalla completa la captura me sale en negro, alguien sabe el motivo de esto.


  • 0

#6 escafandra

escafandra

    Advanced Member

  • Moderadores
  • PipPipPip
  • 4.006 mensajes
  • LocationMadrid - España

Escrito 18 noviembre 2016 - 04:45

Revisa la configuración de tu tarjeta gráfica para ese programa de juegos y configúrala para gráficos integrados o compatibles GDI

 

Saludos.


  • 0

#7 Dante

Dante

    Advanced Member

  • Miembros
  • PipPipPip
  • 89 mensajes

Escrito 21 noviembre 2016 - 09:25

como podria hacer eso automaticamente para cualquier juego en cualquier pc


  • 0

#8 Dante

Dante

    Advanced Member

  • Miembros
  • PipPipPip
  • 89 mensajes

Escrito 21 noviembre 2016 - 04:21

e encontrado una aplicacion q logra tomar una captuar de un juego es Fraps 3.5 alguien sabe como lo hace


  • 0