1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. mak87

Beiträge von mak87

  • Fortlaufende Screenshots/Bildschirmfotos machen

    • mak87
    • 1. Dezember 2016 um 17:47

    So, ein wenig angepasst funktioniert das Skript, wie es soll. Hier der Code:

    C
    #include <File.au3>
    #include <ScreenCapture.au3>
    
    
    WinActive("Firefox")
    Sleep(4000)
    For $i = 1 To 25 ; Schleifendurchläufe bis $i den Wert 25 hat (bei jedem Durchlauf + 1 also 5 Durchläufe)
    	; Alles in dieser Schleife wird nun nacheinander so lange die Schleife läuft aufgerufen.
    	Send("{RIGHT}")
    	; 2 Sekunden warten bis die nächste Seite aufgerufen ist
    	Sleep(2000)
    	Send("!{PRINTSCREEN}")
    	FotoSpeichern()
    	;Sleep(1000)
    Next
    
    
    Func FotoSpeichern()
    
    
    	Local $anzahl = 0
    	Local $hBmp
    	; Capture full screen
    	$hBmp = _ScreenCapture_Capture("")
    	sleep(1000)
    	$bilder = _FileListToArray(@ScriptDir, "*.jpg")
    	    	If @error Then
        		$bilder = 1
        	Else
        		$bilder = $bilder[0] + 1
        	EndIf
        For $i = $bilder To $bilder + $anzahl Step 1
        		$hBmp = _ScreenCapture_Capture("")
        		$name = _ScreenCapture_SaveImage("GDIPlus_Image" & $i & ".jpg", $hBmp)
        	Next
    EndFunc   ;==> FotoSpeichern
    
    
    Func Ende($title, $text = "Fertig")
    	MsgBox(0, $title, $text)
    EndFunc   ;==>Ende
    Ende("Fertig")
    Alles anzeigen


    Den Windows Screenshooter verstehe ich nicht so recht. Ich konnte nicht herausfinden, wie ein automatisiertes Bildschirmfotos machen, so wie in diesem Skript, funktioniert.
    Danke Euch für die Unterstützung!

  • Fortlaufende Screenshots/Bildschirmfotos machen

    • mak87
    • 23. November 2016 um 21:49

    @autoiter
    Danke für die Schleife! Wenn das Firefox-Fenster aktiv ist, dann funktioniert das Weiterblättern. Die Fotos werden auch erstellt, allerdings - wie du schon geschrieben hast - nicht fortlaufend gespeichert. Ich werde mich die Tage mit dem Skript nochmal auseinandersetzen und rumprobieren.

    @autoBert
    Danke für den Link, auch das werde ich mir die Tage anschauen.

  • Fortlaufende Screenshots/Bildschirmfotos machen

    • mak87
    • 22. November 2016 um 16:32

    Hallo Forum,

    zuallererst: ich bin Neuling in AutoIT und habe nur geringe Kenntnisse im Programmieren allgemein.
    Ich möchte fortlaufend Bildschirmfotos im Firefox machen. Die Vorgehensweise soll so ablaufen:

    • Firefox wird manuell geöffnet, auf den externen Monitor verschoben und in Vollbildmodus (F11) versetzt
    • Webseite wird manuell geöffnet
    • Das AutoIT-Skript soll ein Bildschirmfoto vom aktuellen Vollbild auf dem externen Bildschirm machen
    • Dieses Bild dann unter "Eigene Dokumente" mit einer fortlaufenden Nummer als jpg speichern
    • Drei Sekunden warten
    • Mit dem Tastendruck der rechten Pfeiltaste zum nächsten Bild blättern
    • Bildschirmfoto machen
    • speichern mit fortlaufender Nummer
    • und so weiter

    Die Anzahl dieser Prozedur möchte ich variabel setzen können. Dazu habe ich folgendes Skript zusammengezimmert:

    Code
    #include <ScreenCapture.au3>
    ;WinWait("Firefox")
    WinActive("Firefox")
    Send("!{PRINTSCREEN}")
    ;
    FotoSpeichern()
    
    
    Func FotoSpeichern ()
        Local $hBmp
        ; Capture full screen
        $hBmp = _ScreenCapture_Capture("")
    
    
        ; Save bitmap to file
        _ScreenCapture_SaveImage(@MyDocumentsDir & "\GDIPlus_Image_005.jpg", $hBmp)
    
    
    ;    ShellExecute(@MyDocumentsDir & "\GDIPlus_Image.jpg")
    EndFunc   ;==>FotoSpeichern
    ;
    
    
    Sleep (3000)
    Send("{RIGHT}")
    ; 3 Sekunden warten bis die nächste Seite aufgerufen ist
    Sleep (3000)
    Send("!{PRINTSCREEN}")
    ;
    #comments-start
    FotoSpeichern2()
    
    
     ;Func FotoSpeichern2 ()
        Local $hBmp
        ; Capture full screen
        $hBmp = _ScreenCapture_Capture("")
    
    
        ; Save bitmap to file
        _ScreenCapture_SaveImage(@MyDocumentsDir & "\GDIPlus_Image_006.jpg", $hBmp)
    
    
    ;    ShellExecute(@MyDocumentsDir & "\GDIPlus_Image.jpg")
    EndFunc   ;==>FotoSpeichern
    #comments-end
    Func Ende ($title, $text = "Fertig")
    	MsgBox(0, $title, $text)
    EndFunc
    Ende("Fertig")
    Alles anzeigen

    Was funktiert:

    • einzelnes Bildschirmfoto machen
    • Foto speichern


    Was NICHT funktioniert:

    • weiterblättern mittels der rechten Pfeiltaste
    • weiteres Bildschirmfoto machen


    Ich denke, dass eine FOR-Schleife, wie unter https://autoit.de/wiki/index.php/Tutorial#Schleifen beschrieben
    die Lösung wäre. Allerdings komme ich nicht so recht klar damit. Ich bin Neuling und weiß nicht, wie ich
    diese Schleife für mein Skript anpassen kann.

    Kann mir bitte jemand weiterhelfen? Danke im Voraus!

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™