Batchdatei als Skript ausführen?

blimaa

Level-2
Beiträge
954
Reaktionspunkte
103
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi
TIa WinCC Runtime Advance

Da ich ja jetzt wieder mal mein TIA ohne Abstürze benutzen konnte stiess ich auf ein Problem:
Ich weiss das Thema war hier schon einmal present, allerdings kriege ichs nicht hin.
Ich möchte meine Batchdatei ausführen lassen:

Das heisst im WinCC im Skript "StartProgram" machen. Als Programm den direkten Pfad auf meine Batchdatei definieren.
Die Patchdatei sieht folgendermassen aus und läuft auch, wenn ich sie anklicke:

Code:
 convert logo: C:\Kamera\Bilder\Bild_Kamera_St1_1.svg C:\Kamera\Bilder\Bild_Kamera_St1_1.png

Das wandelt mir eine .svg Datei in eine .png Datei um.
Wenn ich dies allerdings via Skript aufrufe kommt mir immer die Fehlermeldung, dass C:\Kamera\Bilder\Bild_Kamera_St1_1.svg falsch sei. Wobei man nochmals bedenke, dass wenn ich die Batchdatei direkt anklicke wunderbar funktioniert.

Gruss blimaa
 
Gib' mal den vollen Pfad zu Deiner Convert-Datei in der Batch an.

Es gibt nämlich auch schon einen integrierten Convert-Befehl in der Commandoebene, der dazu dient, das Format von Festplatten zu ändern. Außerdem gibt es vorbestimmte Suchpfade für die Befehle/Dateien, wenn kein kompletter Pfad angegeben ist.
Wenn sich Deine Batch im gleichen Pfad wie Deine Convert (eine eindeutige Umbenennung Deiner Convert exe? wäre auch nicht verkehrt) befindet, wird sie bei Direktaufruf der Batch eventuell vor der des Command-Prompts gefunden. Beim Aufruf aus dem Script beginnt die Suche jedoch ggf. woanders (dort, wo das Script gerade ist) und dann kann auch die aufgerufene Convert die andere sein. Die Fehlermeldung klingt jedenfalls stark nach der System-Convert, denn die kann mit Deinen Bildern logischerweise nichts anfangen, wenn sie 'ne Festplatte konvertieren will.

Auch ein Wechsel in den gewünschten Ordner mittels CD vor dem Aufruf der Convert könnte helfen.
 
Zuletzt bearbeitet:
Hi

Also:
Code:
SmartTags("Path_SVG_umwandeln") = "C:\Kamera\Bilder\Batchdatei\"
SmartTags("File_SVG_umwandeln") = SmartTags("Path_SVG_umwandeln")& "Bild_umwandeln1.bat"

StartProgram SmartTags("File_SVG_umwandeln"),"", hmiShowMinimized, hmiYes  'Startet das Programm minimiert
mit der Batchdatei:
Code:
cd\
convert C:\Kamera\Bilder\Bild_Kamera_St1_1.svg C:\Kamera\Bilder\Bild_Kamera_St1_1.png

soweit funktioniert einwandfrei.

Super und besten Dank
 
Da hast Du aber schon Glück!
CD\ wechselt ja einfach nur vom aktuellen in dessen Rootverzeichnis, also wahrscheinlich nach C:\. Demzufolge muss sich dort auch die von Dir gewünschte Convert befinden, so dass es nicht (mehr) zur Suche in den in der Variablen %PATH% angegebenen Pfaden kommt. Dort wird meist mit dem Systempfad begonnen, in dem sich auch die System-Convert befindet.

Auch wenn Dein Code jetzt funktioniert, würde ich die Batch-Variante mit dem vollen Pfad zur Convert bevorzugen. Also bei Dir wahrscheinlich:
Code:
C:\Convert C:\Kamera\Bilder\Bild_Kamera_St1_1.svg C:\Kamera\Bilder\Bild_Kamera_St1_1.png
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi
Man darf ja auch mal Glück haben mit der alten Diva TIA. :rolleyes:
Aber guten Einwand. Werde ich morgen ausprobieren.

Gruss blimaa

Edit: Jup wechselt auf C:\
 
Zurück
Oben