mschrewe
Goto Top

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

Content-ID: 172790

Url: https://administrator.de/contentid/172790

Ausgedruckt am: 05.11.2024 um 17:11 Uhr

DerWoWusste
DerWoWusste 08.09.2011 um 10:39:35 Uhr
Goto Top
Hi Marc.

Das Verhalten ist vermutlich normal. Wenn das Kennwort gespeichert wird, wird der Task aus Sicherheitsgründen nicht interaktiv (=sichtbar) ausgeführt, aber ausgeführt wird er. Da gibt es keinen Umweg.
mschrewe
mschrewe 08.09.2011 um 10:43:34 Uhr
Goto Top
Hi.

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 face-smile

Ausserdem: ich hatte geschrieben:
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", und ich auf "Ausführen" klicke (also angemeldet bin), funktioniert es nicht! <<<<<< hier eine Ergänzung zu oben.


Danke und Gruß, Marc
DerWoWusste
DerWoWusste 08.09.2011 um 10:47:52 Uhr
Goto Top
Ich hatte Deine Ergänzungen gelesen und auch so verstanden.
Bitte gib den Inhalt der Batch wieder. Evtl. nutzt Sie Netzlaufwerke? Dann nimm UNC-Pfade.
ackerdiesel
ackerdiesel 08.09.2011 um 10:55:27 Uhr
Goto Top

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 face-smile

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
mschrewe
mschrewe 08.09.2011 um 10:58:32 Uhr
Goto Top
Hallo Ackerdiesel, also wenn die Batchdatei fehlerhaft wäre, würde sie wohl nie ausgeführt werden können und nicht nur, wenn ich nicht angemeldet bin. Inhalt der Batchdatei kommt gleich.....

Marc
ackerdiesel
ackerdiesel 08.09.2011 um 13:04:11 Uhr
Goto Top
Hallo,

natürlich kann es an der Batch liegen, z.B. wie DerWoWusste schon geschrieben hat an Netzlaufwerken die nicht vorhanden sind, wenn Du nicht angemeldet bist.

Gruß
ackerdiesel
mschrewe
mschrewe 08.09.2011 um 13:33:02 Uhr
Goto Top
Sooooo, hier ist die Batch:

rem Script zum automatischen Einlesen der Indexdaten

rem Beispiel dtexec /F "C:\docuwar5\Daten Import\Integration Services Project Data Import\Integration Services Project1\Data Import.dtsx"

dtexec /F "C:\docuwar5\Daten Import\Korsch_Datenimport\Korsch_Datenimport\1-Industrie.dtsx"
DerWoWusste
DerWoWusste 08.09.2011 um 13:39:58 Uhr
Goto Top
dtexec wird auch gefunden, wenn keiner angemeldet ist? Hast Du's mit Pfad schon versucht?
mschrewe
mschrewe 08.09.2011 um 14:32:32 Uhr
Goto Top
Ja, daran liegt es (leider) nicht. Zur Info: ein Kunde hat seine Plattform von Server 2003 auf 2008R2 geändert. Auf dem 2003er lief das alles ganz genau so, jetzt auf dem 2008er nicht mehr.....
DerWoWusste
DerWoWusste 08.09.2011 um 15:25:16 Uhr
Goto Top
Geändert von 32 auf 64 Bit, oder war der 2003 ein x64?
mschrewe
mschrewe 08.09.2011 um 15:56:52 Uhr
Goto Top
Hallo. Das war ein 32bit. Nun natürlich 64bit.
cashburn
cashburn 24.04.2012 um 11:36:53 Uhr
Goto Top
gibts da zwischenzeitlich ne Lösung , hab genau dasselbe Problem
eurorad
eurorad 18.02.2016 um 09:45:48 Uhr
Goto Top
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.
AbsolutNeu
AbsolutNeu 17.01.2017 um 15:21:36 Uhr
Goto Top
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
131381
131381 17.01.2017 um 15:27:54 Uhr
Goto Top
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