RootsLabs

More than a tool ! GitHub Google+ LinkedIn RSS

Réaliser une copie d’écran

Progi1984 - Commentaires (0)

Permet de réaliser une copie d’écran du bureau.

  • Systèmes :
    • Windows
    • Linux
    • MacOs
  • PureBasic 4.30

;@author Progi1984
ProcedureDLL Desktop_MakeScreenshot(Filename.s)
  CompilerSelect #PB_Compiler_OS
    CompilerCase #PB_OS_Linux ;{
      Protected lProgram.l
      RunProgram("import", "-silent -window root "+GetFilePart(Filename), GetPathPart(Filename))
    ;}
    CompilerCase #PB_OS_Windows ;{
      Protected lImage.l
      Protected hDC.l
      lImage = CreateImage(#PB_Any, GetSystemMetrics_(#SM_CXSCREEN),GetSystemMetrics_(#SM_CYSCREEN))
      hDC = StartDrawing(ImageOutput(lImage))
        BitBlt_(hDC,0,0,ImageWidth(lImage),ImageHeight(lImage),GetDC_(GetDesktopWindow_()), 0, 0, #SRCCOPY)
      StopDrawing()
      ReleaseDC_(GetDesktopWindow_(), hDC) 
      SaveImage(lImage, Filename)
    ;}
  CompilerEndSelect
EndProcedure

Desktop_MakeScreenshot(GetHomeDirectory() + "file.jpg")

Ajouter un commentaire

Commentaire :