Sound Geschrieben 3. März 2003 Geschrieben 3. März 2003 Hallo, erst mal der Anfang i =1 a =1 for a = 1 to 20 for i = 0001 to 0020 set icontools = CreateObject("icons.tobtools") set wshshell = CreateObject("Wscript.shell") datei = "C:\Screenshot\BILD" & i & ".BMP" icontools.CaptureActiveWindowToFile datei, 10 next next man muss einen Ordner erstellen auf C:\ der Screenshot heisst. Das Prg schiesst alle 10 sec. ein picture und speichert es ab. Das geht ja noch alles aber wenn ich das Script nochmal starte dann werden die vorhandenen 20 Bilder überschrieben. Ich möchte jetzt, das der Ordner Screenshot noch 7 Ordner enthält wo einfach 1-7 heissen. Es soll dann beim ersten starten alle Bilder in 1 speichern, startet man es dann wieder soll das Prg sehen, das es in 1 schon Bild gibt und dann schauen in 2....... set fs = CreateObject("Scripting.FileSystemObject") if fs.FileExists("C:\Screenshot\Bild*.BPM") then In diesem Teil wird getestet ob ein Bild vorhanden ist aber es muss ja so wie ich mir das denke / vorstelle mit variablen gehen. Kann mir vielleicht einer helfen mit dem passenden Code? Schon mal THX im vorraus Tschuess Sound Zitieren
daking Geschrieben 5. März 2003 Geschrieben 5. März 2003 Hallo const MAX = 7 Dim i Dim a Dim strNextFolder Dim objSH DIm objTob Dim strRoot Dim datei strRoot = "C:\Screenshot" set objTob = WScript.CreateObject("icons.tobtools") strNextFolder= checkFolders(strRoot) for a = 1 to 20 for i = 0001 to 0020 datei= strRoot & "\" & i & ".bmp" objTob.CaptureActiveWindowToFile datei,10 next next set objTob = Nothing function checkFolders(strRoot) dim objFSO dim objFolder dim intCount dim strAnswer Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") strAnswer = "nothing" for intCount = 1 to MAX if objFSO.FolderExists(strRoot & "\" & intCount) then set objFolder = objFSO.GetFolder(strRoot & "\" & intCount) if objFolder.Files.Count = 0 then strAnswer = objFolder.Path set objFolder = nothing intCount = MAX else set objFolder = nothing end if end if Next set objFSO = nothing checkFolders = strAnswer end function Fehlerbehandlung nicht vergessen! Ciao Zitieren
Sound Geschrieben 6. März 2003 Autor Geschrieben 6. März 2003 Hallo daking, vielen dank für Deine Hilfe. Das werde ich gleich nachher mal abchecken. Habe erst mit wsh ganz neu angefangen. Gibt es unter wsh die möglichkeit die Screenshot's gleich in JPG oder GIF abzuspeichern, oder muß man die erst konvertieren und wie macht man das am besten, habe im Internet schon echt lange gesucht, nach convert BMP in JPG, und..... Gibt es da vielleicht einen Code und wenn ja wo setze ich den am besten ein!? Schon mal THX im vorraus. Greetz Sound Zitieren
daking Geschrieben 6. März 2003 Geschrieben 6. März 2003 Hallo, some tricks (einfach): Einfach IrfanView downloaden und installieren (google) und dann in diesem Teil: musst dann doch die Shell erstellen 'bei der Deklaration der Variablen einfügen: Dim objShell Dim strCommand Set objShell = WScript.CreateObject("WScript.Shell") 'dann weiter for a = 1 to 20 for i = 0001 to 0020 datei= strRoot & "\" & i & ".bmp" objTob.CaptureActiveWindowToFile datei,10 strCommand = "i_view32.exe "& datei & " /convert=" & strRoot & "\" & i & ".jpg" objShell.Run strCommand next next 'am Schluss set objShell = nothing Habs nicht ausprobiert, sollte aber funktionieren... Ciao Zitieren
Sound Geschrieben 6. März 2003 Autor Geschrieben 6. März 2003 Hallo, ich habe hier den Script Spy, ich habe schon so etwas gelesen, aber so wie ich das verstehe, muss dann auf dem installierten Rechner, diese Programm installiert sein, damit man die dll nutzen kann. Ich sollte aber einen weg finden, das man das script laufen läßt es nach jedem Start fragt, Ordner 1 gibt es "Bild*.BMP" ja, dann Ordner 2....... Ordner 4 leer, OK speichere die Bilder in Ordner 4, dies habe ich schon am laufen, leider in der Schule vergessen. War aber heute nicht und gehe auch morgen nicht, versuche es aber nochmal morgen hier zu schreiben. Das beste wäre, wenn der Screenshot sofort als JPG oder GIF gespeichert werden. Als BMP zwingt es meinen AMD XP 2100 gut in die Knie, wenn ich alle 10 sec. ein Bild schiesse. Ich will gar nicht wissen, was ein 500er macht. Kommt dann auch noch der konvertierungsvorgang dazu, scgwingt die CPU ne weiße Fahne. Nochmals THX für Deine Hilfe, vielleicht fällt Dir / Euch noch eine Lösung dazu ein!? Greetz Sound Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.