Microsoft MVPs inside





 MCSEboard.de MCSE Forum zu Windows XP / 2003 / 2008 Server & Windows Vista / Windows 7
Registrieren Hilfe Regeln Benutzerliste Suchen Heutige Beiträge Alle Foren als gelesen markieren

Windows Forum — Scripting


Alles zum Thema System Administration Scripting — Q & A zum Thema Scripting: Batch, VBS, WMI, PowerShell


Antwort
     
Themen-Optionen
Alt 31.08.2010, 17:08   #1
Newbie
 
Offline
Registriert seit: 08-2010
Beiträge: 2
vbs für ImageMagick

hallo an alle!

Folgendes Problem:
In einem Ordner soll eine beliebige Anzahl Bilder markiert werden, die dann über das Kontextmenü mit "Senden an" per Script an ImageMagick übergeben werden und konvertiert in einem Ordner auf dem Desktop landen sollen.
Dazu habe ich ein Code-Beispiel aus der Doku von IM leicht angepasst
Code:
Dim FName
 Dim wsh,fs
 Set wsh = CreateObject("Wscript.Shell")
 Set fs = CreateObject("Scripting.FileSystemObject")
 '
 NArgs = WScript.Arguments.Count
 Redim FName(NArgs-1)
 strInputFiles  = ""
 For i = 0 to NArgs - 1
        FName(i) = """" & WScript.Arguments(i) & """"
        strInputFiles = strInputFiles & " " & FName(i)
 next
'
 fs.CreateFolder "Desktop\Web-Bilder"
 Command = "C:\Programme\ImageMagick-6.6.3-Q16\convert.exe " & strInputFiles & " -resize 700 ""Desktop\Web-Bilder\file.jpg"""
 wsh.run command, 7, true
Das klappt soweit auch, allerdings würde ich die Zieldateien auch gern wie die Ausgangsdateien benennen lassen.

Kann mir jemand helfen, wie das zu bewerkstelligen ist?
Vielen Dank im voraus!
    Mit Zitat antworten
Alt 01.09.2010, 10:17   #2
Expert Member
 
Benutzerbild von Cybquest
 
Offline
Registriert seit: 12-2006
Ort: Weinsberg
Beiträge: 1.508
Hallo und Willkommen,

ich kenne ImageMagick nicht, vermute aber, dass Du das über eine Option bei der convert.exe steuern kannst. Möglicherweise die, wo Du momentan "...Web-Bilder\file.jpg" stehen hast?

Per Script sähe ich nur die Möglichkeit, Convert innerhalb der Schleife für jedes Bild einzeln aufzurufen und die Datei hinterher jeweils umzubenennen.

Signatur
My name is Frank, you can say you to me.

    Mit Zitat antworten
Alt 02.09.2010, 03:03   #3
Newbie
 
Offline
Registriert seit: 08-2010
Beiträge: 2
hallo Frank,

besten Dank für den Hinweis (manchmal braucht's einen Anstoß, dass der Baum umfällt ;-) Ich hab den convert-Befehl jetzt in die Schleife gelegt, und alles läuft, wie gewünscht ... War ein schöner Denksport bei Vorkenntnis = 0.
Hier der Schnippel, falls das jemanden interessiert.
Code:
Dim FName()
 Dim wsh,fs
 Set wsh = CreateObject("Wscript.Shell")
 Set fs = CreateObject("Scripting.FileSystemObject")
 fs.CreateFolder "Desktop\Web-Bilder"
 '
 Set Args = WScript.Arguments
 For Each strArg in Args
		InFile = """" & strArg & """"
		OutFileName = fs.getBaseName(InFile)
		Command = "C:\Programme\ImageMagick-6.6.3-Q16\convert.exe " & InFile & " -resize 700 ""Desktop\Web-Bilder\" & OutFileName & ".jpg"""
		wsh.run command, 7, true
 next
Edit:Wie ich gerade bemerkt habe, wird bei der Auswahl zu vieler Dateien (ca. 25) die Argumentenliste zu lang.
Kann man das beheben?

Geändert von olegischinski (02.09.2010 um 13:39 Uhr).
    Mit Zitat antworten
Antwort


Themen-Optionen


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Probleme mit ImageMagick katze78 Windows Server Forum 0 05.06.2007 07:56
ImageMagick - Coppermine Photo Gallery's katze78 Windows Forum — Allgemein 0 07.08.2004 13:17


Alle Zeitangaben in MEZ/CET. Es ist jetzt 23:27 Uhr. Seite generiert in 0,050 Sekunden.

- Unsere Partner -

Copyright © 2000 – 2012 MCSEboard.de

Sprung zum Seitenanfang