PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Batch und VB-Skript



Reloaded
16.12.2010, 14:31
Hallo zusammen,

ich kämpfe mich seid ein paar Tagen mit einem Skrip rum. Ich will bei einer Alamierung z.B.: 5 Ton 12345 eine Batch Starten und die Aufnahme für 30 Sec. Das Batchfile rufe ich mit "%1" "%2" "%3" "%4" auf. Das klappt auch so weit. Die Batch startet dann ein VB-Skript, bis hier hin geht es auch noch. Das Skript sollte eigentlich eine E-Mail über Outlook versenden dann 35 Sec warten eine Batchfile öffnen die das Audiofile von FMS umbennent wieder für 5 Sec warten dann die 2te Mail mit Anhang über Outlook versenden noch einmal 5 Sec warten um dann das Audiofile zu löschen. Die erste Mail wird noch versendet die Batch zum umbennenen startet er nicht die zweite Mail will er versenden findet aber die Audio datei nicht weil der Name nicht passt und das Löschen geht auch nicht.

Wenn ich die Batch mit der Hand starte und ein Audiofile was mit 12345 startet im Ordner liegt macht er alles genau so wie es seien soll.

Kann mir jemand helfen?

Gruß

Reloaded

Andi-Hamburg
16.12.2010, 15:43
Kann Dir nicht direkt helfen, aber hast Du es schon mal versucht mit dem Alarmtool zu realisieren?

Gruß

Reloaded
16.12.2010, 17:29
Da ist genau das selbe Problem. Was ich nicht verstehe ist, warum es nur nicht geht, wenn man es über die Programme starten lässt.

felix000
16.12.2010, 17:40
In den Optionen "Aktionen ausführen" aktiviert???

Reloaded
16.12.2010, 17:44
Natürlich :D

Reloaded
16.12.2010, 17:56
Hier der Code von den Drei Skripten:

Start (Batch):

@echo off
call C:\Programme\Heirue-Soft\FMS32-PRO\Funkaufzeichnung\Mail.vbs

Mail (VBS):

Const olByValue = 1
Const olMailItem = 0

Dim oOApp
Dim oOMail

'Mail bei 5 Ton

Set oOApp = CreateObject("Outlook.Application")
Set oOMail = oOApp.CreateItem(olMailItem)

With oOMail
.To = "***@***.de"
.cc= ""
.Subject = "Einsatz FFW-***"
.Body = "Die Feuerwehr *** ist am "&date&" um "&time&" ausgerück"
.Send
End With

wscript.sleep 35000

Set oShell = WScript.CreateObject("WScript.Shell")
oShell.Run "C:\Programme\Heirue-Soft\FMS32-PRO\Funkaufzeichnung\rename.bat"

wscript.sleep 5000

'Mail mit Anhang

Set oOApp = CreateObject("Outlook.Application")
Set oOMail = oOApp.CreateItem(olMailItem)

With oOMail
.To = "***@***.de"
.cc= ""
.Subject = "Einsatz FFW-***"
.Body = "Im Anhang befindet sich eine Audio Datei mit dem Meldebild "&time
.Attachments.Add ("C:\Programme\Heirue-Soft\FMS32-PRO\Funkaufzeichnung\12345.wav"), olByValue, 1
.Send
End With

wscript.sleep 5000

'Datei Löschen

Dim WshShell, fso, test

Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell = WScript.CreateObject("wscript.shell")

On Error Resume Next

test = fso.datecreated
fso.deleteFile ("12345*")

Renam (Batch):

@echo off
ren 12345*.wav "12345.wav"

FMS-Master
17.12.2010, 10:03
Hallo reloaded!

Als erstes würde ich in der Rename-Batch mal das Echo Off rausnehmen und am ende ein pause einfügen. Vielleicht wirft er ja eine Fehlermeldung aus.

Je nachdem welche "DOS-Version" du benutzt könnte es nämlich sein das das mit dem * schwierigkeiten gibt. (dann müsstest du 12345* 12345.wav schreiben

Achso, da fallen mir gerade die "" auf, die gehören aber nicht um den Zieldateinamen!

HTH

Greetz FMS-Master