ich bin mir sicher, dass wir das Thema schon mal irgendweo diskutiert haben, aber ich finde es nicht mehr.
Viele Sender haben Werbung oder Nachrichten am laufen, wozu bestimmte Datein zu bestimmten Zeiten von einem FTP-Server geladen werden müssen. Der einfache FTP-Download funktioniert ja wunderbar. In manchen fällen ist jedoch ein aufwendigeres Script notwendig (cmd-Datei).
Ich nach einer Möglichkeit eine cmd-Datei über die Eventsteuerung zu starten um diese dann nach dem Download sozusagen frisch in die CW zu laden. Problem dabei ist, dass die Datei immer frisch geladen werden muß und nicht vorgepuffert sein darf.
Du suchst vermutlich den Befehl ShellExecute für Dein Script. Ich meine es gab noch sowas wie ShellExecuteHidden, um das CMD Fenster nicht zu zeigen. Das würde ja im Sendebetrieb plötzlich auf dem Bildschirm auftauchen.
Müsste sich eigenltich einiges hier im Forum dazu finden lassen.
Ich lös das mittlerweile über das Aktionsmenü. Da kann ich doch alles ausführen lassen was ich so brauch. Als Aktion ein kurzes Script mit ShellExecute und ab dafür.
Das Schöne daran: Diese kurzen Scripte tun auch ihr Werk wenn sie automatisiert von einem Event aufgerufen werden.
Ich verwende die Version 4.4.9 und will ein CMD-Werbescript per Event-Verwaltung automatisch starten.
Leider wird mein CMD-Script nicht korrekt ausgeführt. Kann mir bitte jemand weiterhelfen?
begin
SystemLog(‘Starte Batch Hello World’);
ShellExecute(‘D:\Radio\Werbung\Werbung_Download.cmd’,‘schreib Hello World’);
end.
Und es klappt auch mit dieser Variante nicht:
begin
ShellExecute(‘D:\Radio\Werbung\Werbung_Download.cmd’,’’);
end.
Das CMD-Script funktioniert irgendwie nur per Doppelklick richtig. Per Event läuft es leider auch mit dem letzten Code nicht.
Solange ich den Klick nicht mal vergesse, ist das schon ok. so.
Was genau funktioniert denn nicht?
Meine neue Erkenntnis aus diversen Probiersessions: Aus Mairlist heraus gestartet kann es sein, daß man für Programme die die CMD ausführen lassen will, den kompletten Pfad angeben muß, weil die CMD keinen Homepath kennt, wenn man’s nicht per Mausklick in Windows anschiebt.
An den Pfadangaben scheint es nicht zu liegen, die sind alle komplett.
Das Fenster zum Start des CMD-Scripts erscheint auch kurz, ist allerdings nicht zu lesen, da es innerhalb einer Sekunde wieder verschwindet.
Das Script wird allerdings nicht korrekt ausgeführt, da die Datei die es erzeugen soll, nicht erzeugt wird.
Sobald ich das Script aber per Doppelklick ausführe, ist alles wie es sein soll.
Ich bin leider kein Programmierer, kann Dir daher vielleicht auch nicht folgen, sorry…
Aber ich arbeite mit Win7 64 bit, mAirList Version 4.4.10 Build 2114.
Und es könnte durchaus sein, dass es an der CMD-Datei liegt, allerdings darf ich den Code hier nicht posten, weil der Programmierer das nicht freigeben möchte.
Aber wie geschrieben, wenn ich die Datei per Doppelklick ausführe, funktioniert alles.
Ohne Sourcecode der Batch kann ich Dir da leider nicht weiterhelfen.
Was ist an einem Script welches Irgendwelche Files runterläd so geheim? Ich hab ca. 20 davon im Einsatz, nur werden die nicht durch mAirlist getriggert, sondern durch einen externen Scheduler.
Per http, per ftp, per webdav, ist ja alles keine große Sache.
[code]@echo on
:setting
set _ver=0.1.5
set _show=%1
set _robo=…\tools\robocopy.exe
set _blat=…\tools\blat.exe
set _gainer=%~dp0gain.cmd
set _srv=https://irgend.ein.server
set _srvpath=
set _trgtdrv=%~dp0…
set _trgtdir=\Malte-TEST\ftp-test
set _dirprefix=\Mp3\Vorproduktionen
set _log=…\log\ftp-download
set _auth=
call %~dp0GetAllDateTimeInfos.cmd /s /q
set _kw=%KW%
call .%~dp0GetAllDateTimeInfos.cmd /u /q
echo Aktuelle Woche KW%_kw%
:schlagerrallye
set _user=SupersichererUserName
set _pass=Supergeheimespasswort
set _srv=https://webdav.xyz.org
set _srvpath=Pfad_Zur_Sendung
set _trgtdir=%_dirprefix%\SchlagerRallye
goto download
:ende
net use z: /delete
::exit[/code]
Das Beispiel wird so sicherlicht auch nicht mit mAirList funktionieren, ich vermute alle Pfade müssen absolut sein oder es muss zumindest der Execute Path der batch vorangestellt werden mittels “%~dp0” oder ähnlicher Variable.