Aufgabenplanung 2008R2 geht nur, wenn User angemeldet ist
Hallo zusammen, folgendes Problem mit der Aufgabenplanung:
ich möchte eine .cmd oder auch .bat über die Aufgabenplanung in 2008R2 ausführen lassen, wenn ich nicht angemeldet bin. Man hat ja die Wahl folgendes anzuklicken: 1.: Nur ausführen, wenn der User angemeldet ist; 2.: Unabhängig von der Benutzeranmeldung ausführen. Ausgewählt ist das zweite.
Nun zu meinem Problem:
wenn ich die Datei doppelklicke (im Explorer), dann funktioniert es.
wenn in der Aufgabenplanung angehakt ist, "Nur ausführen, wenn der User angemeldet ist" und ich auf "Ausführen" klicke, funktioniert es auch.
wenn in der Aufgabenplanung angehakt ist, " Unabhängig von der Benutzeranmeldung ausführen", funktioniert es nicht!
Ich habe Administrator Rechte, und unter denen soll die Aufgabe auch ausgeführt werden. Angehakt ist auch die Option: "Mit höchsten Privilegien ausführen".
Jemand eine Idee?
Vielen Dank im vorraus! Marc
ich möchte eine .cmd oder auch .bat über die Aufgabenplanung in 2008R2 ausführen lassen, wenn ich nicht angemeldet bin. Man hat ja die Wahl folgendes anzuklicken: 1.: Nur ausführen, wenn der User angemeldet ist; 2.: Unabhängig von der Benutzeranmeldung ausführen. Ausgewählt ist das zweite.
Nun zu meinem Problem:
wenn ich die Datei doppelklicke (im Explorer), dann funktioniert es.
wenn in der Aufgabenplanung angehakt ist, "Nur ausführen, wenn der User angemeldet ist" und ich auf "Ausführen" klicke, funktioniert es auch.
wenn in der Aufgabenplanung angehakt ist, " Unabhängig von der Benutzeranmeldung ausführen", funktioniert es nicht!
Ich habe Administrator Rechte, und unter denen soll die Aufgabe auch ausgeführt werden. Angehakt ist auch die Option: "Mit höchsten Privilegien ausführen".
Jemand eine Idee?
Vielen Dank im vorraus! Marc
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 172790
Url: https://administrator.de/contentid/172790
Ausgedruckt am: 05.11.2024 um 17:11 Uhr
15 Kommentare
Neuester Kommentar
Nein, es wirden eben nichts ausgeführt. Es soll eine Datei (oder besser der Inhalt einer Datei) von A nach B kopiert werden.
Die Aufgabenplanung behauptet, das der Task ausgeführt wurde. Das stimmt allerdings nicht, denn die Datei wurde nicht
kopiert! Man kann also sagen, Windows lügt
Windows lügt nicht, der Task wird mit Sicherheit ausgeführt, nur deine Batch funktioniert nicht.
Steht eine Fehlermeldung im Ereignisprotokoll ?
Poste mal die Batch, dort wird der fehler liegen.
Gruß
ackerdiesel
Windows Server 2008 R2
Ich hatte das selbe Problem. Ein Programm lief nur wenn ich "Nur ausführen, wenn der Benutzer angemeldet ist" angehakt hatte,
sobald ich ich auf "Unabhängig von der Benutzeranmeldung ausführen" angehakt hatte, startet zwar das Programm (lt. Taskmanager)
aber es passierte nichts.
Der Tipp anstelle eines LW-Buchstabens den UNC-Pfad zu benutzen brachte ebenfalls nichts. Also wieder auf den LW-Buchstaben
zurückgesetzt.
Erst als ich den zusätzlich Haken bei "Kennwort nicht speichern. Die Aufgabe greift nur auf lokale Ressourcen zu" gesetzt hatte, funktionierte es.
Ich hatte das selbe Problem. Ein Programm lief nur wenn ich "Nur ausführen, wenn der Benutzer angemeldet ist" angehakt hatte,
sobald ich ich auf "Unabhängig von der Benutzeranmeldung ausführen" angehakt hatte, startet zwar das Programm (lt. Taskmanager)
aber es passierte nichts.
Der Tipp anstelle eines LW-Buchstabens den UNC-Pfad zu benutzen brachte ebenfalls nichts. Also wieder auf den LW-Buchstaben
zurückgesetzt.
Erst als ich den zusätzlich Haken bei "Kennwort nicht speichern. Die Aufgabe greift nur auf lokale Ressourcen zu" gesetzt hatte, funktionierte es.
Hallo Leute,
ich bin neu hier und habe mich gerade hier angemeldet, weil ich mit meinem Problem absolut nicht weiter komme und echt auf Hilfe angewiesen bin. Zu mir: Ich bin eigentlich kein IT'ler - ich komme aus der Automation und habe jetzt eine eher IT- lastige Masterarbeit.
Zum Problem:
1. Ich starte eine Aufgabe auf einem Windows Server 2008 R2 (Windows - Aufgabenplanung) über einen Trigger (Auslösung durch das schreiben in ein erstelltes Protokoll - macht ein anderer Server). - Funktioniert einwandfrei!
2. Die Aufgabe soll ein VBScript starten, welches in einer Excel.Application eine vorhandene Arbeitsmappe (liegt auf einem Freigegebenen Laufwerk R:\tc\Stundenreport.xls bzw. \\MGS-012\tc\Stundenreport.xls) bearbeitet. - Funktioniert nicht richtig...
zum Fehlerverhalten:
3. Starte ich das VBScript per Doppelklick funktioniert es einwandfrei
4. Starte ich das VBScript per Aufgabenplanung "Nur ausführen wenn der Benutzer angemeldet ist" funktioniert es auch einwandfrei
5. Starte ich das VBScript per Aufgabenplanung "Unabhängig von Benutzeranmeldung ausführen" funktioniert es nicht...
Im Taskmanager sehe ich, dass wscript.exe und excel.exe beide gestarten werden, jedoch sieht es aus als würden sie nur im Ruhe-Modus sein. Passieren tut rein garnichts, die beiden Exen werden auch nicht mehr geschlossen.
Der Benutzer der sich in diesem Fall anmelden soll ist Domänenadmin. Passwort für die Anmeldung habe ich hinterlegt.
Wie ich die Aktion starte:
Aktion: Programm starten
Programm/Script: C:\Users\BAT\Desktop\Coyo-Datenaustausch\ReinerSCT\Stundenaufbereitung.vbs
Was ich auch probiert habe ist:
Programm/Script: C:\Windows\SysWOW64\wscript.exe (sowie auch die cscript.exe)
Argumente hinzufügen: C:\Users\BAT\Desktop\Coyo-Datenaustausch\ReinerSCT\Stundenaufbereitung.vbs
Zur Info: mit Cscript.exe funktioniert es garnicht, also es wird nichtmal die excel.application geöffnet bzw. ist auf jeden Fall nciht im Taskmanager zu sehen.
Mein VBScript:
pfadzurexceldatei="\\MGS-012\tc\Stundenreport.xls"
Set objexcel = CreateObject("Excel.Application")
objexcel.visible = False
Set objWorkbook = objexcel.Workbooks.Open(pfadzurexceldatei)
Set objSheet= objWorkbook.Worksheets("employee")
Dim iRow, intLetzteVolleZeile, intErsteLeereZeile
Dim Vorhanden, x
Dim Temp1, Temp2, Temp3, Temp4, temp5
Dim objSheet
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Dauer"
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Mitarbeiter"
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Tätigkeit"
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Projekt"
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Prj.- Bereich"
intLetzteVolleZeile = objSheet.Cells(objSheet.Rows.Count, 6).End(-4162).Row
objSheet.Cells(1, 1) = intLetzteVolleZeile
For iRow = 3 To intLetzteVolleZeile
If objSheet.Cells(iRow, 11) <> "" Then Temp1 = objSheet.Cells(iRow, 11)
If objSheet.Cells(iRow, 12) <> "" Then Temp2 = objSheet.Cells(iRow, 12)
If objSheet.Cells(iRow, 13) <> "" Then Temp3 = objSheet.Cells(iRow, 13)
If objSheet.Cells(iRow, 15) <> "" Then Temp4 = objSheet.Cells(iRow, 15)
If objSheet.Cells(iRow, 16) <> "" Then Temp5 = objSheet.Cells(iRow, 16)
If objSheet.Cells(iRow, 10) <> "" Then
objSheet.Cells(iRow, 11) = Temp1
objSheet.Cells(iRow, 12) = Temp2
objSheet.Cells(iRow, 13) = Temp3
objSheet.Cells(iRow, 15) = Temp4
objSheet.Cells(iRow, 16) = Temp5
objSheet.Cells(iRow, 1) = Left(objSheet.Cells(iRow, 7), 2)
objSheet.Cells(iRow, 2) = objSheet.Cells(iRow, 6) & " - " & objSheet.Cells(iRow, 7)
objSheet.Cells(iRow, 3) = objSheet.Cells(iRow, 8) & " " & objSheet.Cells(iRow, 9)
objSheet.Cells(iRow, 4) = objSheet.Cells(iRow, 11) & " " & objSheet.Cells(iRow, 12)
objSheet.Cells(iRow, 5) = objSheet.Cells(iRow, 10) * 24
End If
If objSheet.Cells(iRow, 14) <> "" Then
For xRow = iRow To 1 Step -1
If objSheet.Cells(xRow, 6) = objSheet.Cells(iRow, 6) And objSheet.Cells(xRow, 7) = objSheet.Cells(iRow, 7) And objSheet.Cells(xRow, 8) = objSheet.Cells(iRow, 8) And objSheet.Cells(xRow, 9) = objSheet.Cells(iRow, 9) And objSheet.Cells(xRow, 10) <> "" Then
objSheet.Cells(xRow, 14) = objSheet.Cells(iRow, 14)
Exit For
End If
Next
End If
Next
For iRow = intLetzteVolleZeile To 1 Step -1
If objSheet.Cells(iRow, 5).Value = "" Then
objSheet.Rows(iRow).Delete
End If
Next
'Letzte formatierungen
' objSheet.Columns("F:F").Insert -4161, 0
' objSheet.Columns("N:N").Copy objSheet.Columns("F:F")
' objSheet.Cells(1, 6) = "Mitarbeiter Bereich"
objexcel.Application.DisplayAlerts = False
objworkbook.Save
objexcel.Application.DisplayAlerts = True
objexcel.Quit
ich bin neu hier und habe mich gerade hier angemeldet, weil ich mit meinem Problem absolut nicht weiter komme und echt auf Hilfe angewiesen bin. Zu mir: Ich bin eigentlich kein IT'ler - ich komme aus der Automation und habe jetzt eine eher IT- lastige Masterarbeit.
Zum Problem:
1. Ich starte eine Aufgabe auf einem Windows Server 2008 R2 (Windows - Aufgabenplanung) über einen Trigger (Auslösung durch das schreiben in ein erstelltes Protokoll - macht ein anderer Server). - Funktioniert einwandfrei!
2. Die Aufgabe soll ein VBScript starten, welches in einer Excel.Application eine vorhandene Arbeitsmappe (liegt auf einem Freigegebenen Laufwerk R:\tc\Stundenreport.xls bzw. \\MGS-012\tc\Stundenreport.xls) bearbeitet. - Funktioniert nicht richtig...
zum Fehlerverhalten:
3. Starte ich das VBScript per Doppelklick funktioniert es einwandfrei
4. Starte ich das VBScript per Aufgabenplanung "Nur ausführen wenn der Benutzer angemeldet ist" funktioniert es auch einwandfrei
5. Starte ich das VBScript per Aufgabenplanung "Unabhängig von Benutzeranmeldung ausführen" funktioniert es nicht...
Im Taskmanager sehe ich, dass wscript.exe und excel.exe beide gestarten werden, jedoch sieht es aus als würden sie nur im Ruhe-Modus sein. Passieren tut rein garnichts, die beiden Exen werden auch nicht mehr geschlossen.
Der Benutzer der sich in diesem Fall anmelden soll ist Domänenadmin. Passwort für die Anmeldung habe ich hinterlegt.
Wie ich die Aktion starte:
Aktion: Programm starten
Programm/Script: C:\Users\BAT\Desktop\Coyo-Datenaustausch\ReinerSCT\Stundenaufbereitung.vbs
Was ich auch probiert habe ist:
Programm/Script: C:\Windows\SysWOW64\wscript.exe (sowie auch die cscript.exe)
Argumente hinzufügen: C:\Users\BAT\Desktop\Coyo-Datenaustausch\ReinerSCT\Stundenaufbereitung.vbs
Zur Info: mit Cscript.exe funktioniert es garnicht, also es wird nichtmal die excel.application geöffnet bzw. ist auf jeden Fall nciht im Taskmanager zu sehen.
Mein VBScript:
pfadzurexceldatei="\\MGS-012\tc\Stundenreport.xls"
Set objexcel = CreateObject("Excel.Application")
objexcel.visible = False
Set objWorkbook = objexcel.Workbooks.Open(pfadzurexceldatei)
Set objSheet= objWorkbook.Worksheets("employee")
Dim iRow, intLetzteVolleZeile, intErsteLeereZeile
Dim Vorhanden, x
Dim Temp1, Temp2, Temp3, Temp4, temp5
Dim objSheet
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Dauer"
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Mitarbeiter"
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Tätigkeit"
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Projekt"
objSheet.Columns("A:A").Insert -4161, 0
objSheet.Cells(2, 1) = "Prj.- Bereich"
intLetzteVolleZeile = objSheet.Cells(objSheet.Rows.Count, 6).End(-4162).Row
objSheet.Cells(1, 1) = intLetzteVolleZeile
For iRow = 3 To intLetzteVolleZeile
If objSheet.Cells(iRow, 11) <> "" Then Temp1 = objSheet.Cells(iRow, 11)
If objSheet.Cells(iRow, 12) <> "" Then Temp2 = objSheet.Cells(iRow, 12)
If objSheet.Cells(iRow, 13) <> "" Then Temp3 = objSheet.Cells(iRow, 13)
If objSheet.Cells(iRow, 15) <> "" Then Temp4 = objSheet.Cells(iRow, 15)
If objSheet.Cells(iRow, 16) <> "" Then Temp5 = objSheet.Cells(iRow, 16)
If objSheet.Cells(iRow, 10) <> "" Then
objSheet.Cells(iRow, 11) = Temp1
objSheet.Cells(iRow, 12) = Temp2
objSheet.Cells(iRow, 13) = Temp3
objSheet.Cells(iRow, 15) = Temp4
objSheet.Cells(iRow, 16) = Temp5
objSheet.Cells(iRow, 1) = Left(objSheet.Cells(iRow, 7), 2)
objSheet.Cells(iRow, 2) = objSheet.Cells(iRow, 6) & " - " & objSheet.Cells(iRow, 7)
objSheet.Cells(iRow, 3) = objSheet.Cells(iRow, 8) & " " & objSheet.Cells(iRow, 9)
objSheet.Cells(iRow, 4) = objSheet.Cells(iRow, 11) & " " & objSheet.Cells(iRow, 12)
objSheet.Cells(iRow, 5) = objSheet.Cells(iRow, 10) * 24
End If
If objSheet.Cells(iRow, 14) <> "" Then
For xRow = iRow To 1 Step -1
If objSheet.Cells(xRow, 6) = objSheet.Cells(iRow, 6) And objSheet.Cells(xRow, 7) = objSheet.Cells(iRow, 7) And objSheet.Cells(xRow, 8) = objSheet.Cells(iRow, 8) And objSheet.Cells(xRow, 9) = objSheet.Cells(iRow, 9) And objSheet.Cells(xRow, 10) <> "" Then
objSheet.Cells(xRow, 14) = objSheet.Cells(iRow, 14)
Exit For
End If
Next
End If
Next
For iRow = intLetzteVolleZeile To 1 Step -1
If objSheet.Cells(iRow, 5).Value = "" Then
objSheet.Rows(iRow).Delete
End If
Next
'Letzte formatierungen
' objSheet.Columns("F:F").Insert -4161, 0
' objSheet.Columns("N:N").Copy objSheet.Columns("F:F")
' objSheet.Cells(1, 6) = "Mitarbeiter Bereich"
objexcel.Application.DisplayAlerts = False
objworkbook.Save
objexcel.Application.DisplayAlerts = True
objexcel.Quit
Bitte keine alten Threads aufwärmen.
Hier gucken und die Excel Automation läuft wie gewünscht
Per Batch in Aufgabeplanung XLS in CSV umwandeln
Gruß mik
Hier gucken und die Excel Automation läuft wie gewünscht
Per Batch in Aufgabeplanung XLS in CSV umwandeln
Gruß mik