Screenshot machen

  • Hallo, ich möchte ein screenshot machen wobei ich zwei monitore hab
    ich verwenden die funktion

    [autoit]

    _ScreenCapture_Capture

    [/autoit]

    doch die macht mir nur immer ein screenshot meines primären bildschirmes
    wie kann ich den zweiten zuschalten?

    Einmal editiert, zuletzt von achim89 (27. Oktober 2009 um 12:12)

  • Spoiler anzeigen
    [autoit]

    #include <ScreenCapture.au3>

    [/autoit] [autoit][/autoit] [autoit]

    If Not IsDeclared("SM_VIRTUALWIDTH") Then Global Const $SM_VIRTUALWIDTH = 78
    If Not IsDeclared("SM_VIRTUALHEIGHT") Then Global Const $SM_VIRTUALHEIGHT = 79

    [/autoit] [autoit][/autoit] [autoit]

    Global $VirtualDesktopWidth = DllCall("user32.dll", "int", "GetSystemMetrics", "int", $SM_VIRTUALWIDTH)
    $VirtualDesktopWidth = $VirtualDesktopWidth[0]
    Global $VirtualDesktopHeight = DllCall("user32.dll", "int", "GetSystemMetrics", "int", $SM_VIRTUALHEIGHT)
    $VirtualDesktopHeight = $VirtualDesktopHeight[0]

    [/autoit] [autoit][/autoit] [autoit]

    _ScreenCapture_Capture("Test.jpg", 0, 0, $VirtualDesktopWidth, $VirtualDesktopHeight, 0)

    [/autoit]
  • sry das ich auf diesen alten thread noch antworte aber ich habe ein problem zwar funktioniert das bei mir mit der Größe aber es wird nur der Primary Bildschirm aufgezeichnet ..

    mein Hauptbildschirm ist der Laptop und mein 2. Schirm ist LINKS von ihm ..

    so siehts aus wenn ich das per Druck-Taste mache:


    [Blockierte Grafik: http://img25.imageshack.us/img25/560/screensoy.th.jpg]

    und so siehts mitm skript aus

    [Blockierte Grafik: http://img541.imageshack.us/img541/9762/20100501175704.th.jpg]

    wie kann ich das jetz so machen wie bei der Druck-Taste

    • Offizieller Beitrag

    Benutze das Beispiel von Funkey. Es macht Screenhot´s von mehreren Bildschirmen. Zumindest bei Bildschirmen gleicher Auflösung.

  • Das sollte so funktionieren:

    [autoit]

    #include <ScreenCapture.au3>

    [/autoit][autoit][/autoit][autoit]

    If Not IsDeclared("SM_CXVIRTUALSCREEN") Then Global Const $SM_CXVIRTUALSCREEN = 78
    If Not IsDeclared("SM_CYVIRTUALSCREEN") Then Global Const $SM_CYVIRTUALSCREEN = 79
    If Not IsDeclared("SM_XVIRTUALSCREEN") Then Global Const $SM_XVIRTUALSCREEN = 76
    If Not IsDeclared("SM_YVIRTUALSCREEN") Then Global Const $SM_YVIRTUALSCREEN = 77

    [/autoit][autoit][/autoit][autoit]

    Global $VirtualDesktopWidth = _WinAPI_GetSystemMetrics($SM_CXVIRTUALSCREEN)
    Global $VirtualDesktopHeight = _WinAPI_GetSystemMetrics($SM_CYVIRTUALSCREEN)
    Global $VirtualDesktopX = _WinAPI_GetSystemMetrics($SM_XVIRTUALSCREEN)
    Global $VirtualDesktopY = _WinAPI_GetSystemMetrics($SM_YVIRTUALSCREEN)

    [/autoit][autoit][/autoit][autoit]

    _ScreenCapture_Capture("Test.jpg", $VirtualDesktopX, $VirtualDesktopY, $VirtualDesktopWidth, $VirtualDesktopHeight, 0)

    [/autoit]