Jump to content
Sign in to follow this  
MSChamp

Windows Server 2008 R2 Enterprise Aufgabenplanung

Recommended Posts

Hallo zusammen,

 

ich habe mal wieder ein Problem. Ich möchte via Aufgabenplanung ein vbs automatisch ausführen lassen. Es steht bei Status "wird ausgeführt", aber er macht nichts.

Allerdings wenn man die vbs manuell ausführt, indem man diese anklickt, funktioniert es wunderbar.

Warum geht es nicht automatisch?

Habe auch schon eine bat Datei erstellt die wiederrum die vbs aufruft. Geht aber ebenfalls nicht automatisch.

Für Hilfe wäre ich sehr dankbar.

 

Viele Grüße

Share this post


Link to post

Es gibt keine Fehlermeldung. Außerdem wird es wenig bringen, wenn ich ein Skript poste welches durch manuelles Starten funktioniert.

Ich gehe recht in der Annahme, dass es bei Windows Server 2008 R2 Enterprise nicht mehr möglich ist ein VB Skript ohne eine zusätzliche .bat Datei über die Aufgabenplanung direkt zu starten, oder?

Den Inhalt der bat:

"C:\Windows\SysWOW64\wscript.exe" "D:\VB_Script\ExchangeSicherung_kopieren.vbs"

 

Dieser ist in der Aufgabenplanung unter der demensprechend erstellten Aufgabe als Aktion vorhanden. Somit wird die Aufgabe auch laut der Anzeige in der Aufgabenplanung ausgeführt, jedoch passiert nichts. Es wird die Datei nicht nach bearbeitet und verschoben. Der Task läuft einfach nur, ohne dass er auf den Inhalt des VB Skripts eingeht.

 

Viele Grüße

Share this post


Link to post

Jep hab ich gemacht. Habe ich auch schon gelesen, dass dies neuerdings zwingend für die erfolgreiche Durchführung erforderlich ist.

Share this post


Link to post
Es gibt keine Fehlermeldung. Außerdem wird es wenig bringen, wenn ich ein Skript poste welches durch manuelles Starten funktioniert.

 

Es gab hier schon oft den Fall, das selbsterstellte Skripte Zeile-für-Zeile ausgeführt funktioniert haben, beim Aufruf aus anderen Zusammenhängen jedoch nicht. Wenn du das Skript nicht posten willst kann dein Hilfebedarf nicht so groß sein. Daher ist für mich hier EOD.

Share this post


Link to post

Na dann poste ich es halt.

Dim LeftString, Datei_Last, Tag, Monat, Jahr, tmp

Set objFSO = CreateObject("Scripting.FileSystemObject")

Set Verzeichnis = objFSO.GetFolder("D:\Exchange\")

 

For Each Datei In Verzeichnis.Files

objFSO.DeleteFile Datei

Next

 

Function myDateStr

myDay = Day(Date)

 

If myDay < 10 Then

myDay = "0" & myDay

End If

 

myMonth = Month(Date)

 

If myMonth < 10 Then

myMonth = "0" & myMonth

End If

 

myYear = Year(Date)

myDateStr = "" & myDay & myMonth & myYear

End Function

 

 

objFSO.CopyFile "T:\BackupCSys.bkf", "D:\Exchange\"

objFSO.MoveFile "D:\Exchange\BackupCSys.bkf", "D:\Exchange\Exchange.bkf"

 

For Each Datei In Verzeichnis.Files

LeftString = Left(Datei,20)

Datei_Last = Datei.DateLastModified

Tag = Left(Datei_Last,2)

Monat = Mid(Datei_Last,4,2)

Jahr = Mid(Datei_Last,7,4)

' Wscript.echo LeftString

objFSO.MoveFile Datei, LeftString &"_" & Tag & Monat & Jahr &".bkf"

Next

 

For Each Datei In Verzeichnis.Files

LeftString = Left(Datei,20)

Datei_Last = Datei.DateLastModified

Tag = Left(Datei_Last,2)

Monat = Mid(Datei_Last,4,2)

Jahr = Mid(Datei_Last,7,4)

tmp= LeftString &"_" & Tag & Monat & Jahr &".bkf"

' Wscript.echo tmp

 

Next

 

For Each Datei In Verzeichnis.Files

LeftString = Left(Datei,20)

Datei_Last = Datei.DateLastModified

Tag = Left(Datei_Last,2)

Monat = Mid(Datei_Last,4,2)

Jahr = Mid(Datei_Last,7,4)

tmp= LeftString &"_" & Tag & Monat & Jahr &".bkf"

Datei_Today= LeftString &"_" &myDateStr &".bkf"

' Wscript.echo tmp

 

If Monat = 01 Then

myMonat = "Januar"

end If

If Monat = 02 Then

myMonat = "Februar"

end If

If Monat = 03 Then

myMonat = "März"

end If

If Monat = 04 Then

myMonat = "April"

end If

If Monat = 05 Then

myMonat = "Mai"

end If

If Monat = 06 Then

myMonat = "Juni"

end If

If Monat = 07 Then

myMonat = "Juli"

end If

If Monat = 08 Then

myMonat = "August"

end If

If Monat = 09 Then

myMonat = "September"

end If

If Monat = 10 Then

myMonat = "Oktober"

end If

If Monat = 11 Then

myMonat = "November"

end If

If Monat = 12 Then

myMonat = "Dezember"

end If

Next

 

objFSO.CopyFile "D:\Exchange\*.bkf", "D:\Sicherungen\Exchange\" & Jahr & "\" & myMonat & "\" & Tag & "\"

objFSO.DeleteFile "D:\Exchange\*.bkf"

 

Dann mal viel Spaß

Share this post


Link to post

T:\ ist ein Netzlaufwerk das eingebunden ist.

Wie gesagt, wenn ich die zugehörige .bat (hab ich auch schon gepostet) starte, funktioniert es. Nur aus der Aufgabenplanung von Microsoft mag es nicht:(.

Share this post


Link to post
Mit welchen Benutzerrechten ist der Task ausgestattet? Hast Du [X] mit höchsten Privilegien ausführen angeklickt?

 

Hier noch ein Screenshot, der die Einstellungen meines Tasks noch mal verdeutlicht.

post-52800-13567389950671_thumb.jpg

Share this post


Link to post

Und wer bindet das Laufwerk in der Aufgabenplanung ein?

 

Benutze UNC Pfade und poste nächstes mal so ein Script gleich, da sich der "Fehler" dort befindet.

Share this post


Link to post
Und wer bindet das Laufwerk in der Aufgabenplanung ein?

 

Benutze UNC Pfade und poste nächstes mal so ein Script gleich, da sich der "Fehler" dort befindet.

 

Ich verstehe nicht genau was du meinst. Das Netzlaufwerk mit dem Buchstaben T:\ ist lokal eingebunden. Es hat auch bis dato reibungslos funktioniert. Nur seit der Umstellung auf Windows Server 2008 R2 Enterprise x64 funktioniert es dank der Aufgabenplanung nicht mehr:(.

Share this post


Link to post

In der Aufgabenplanung kommt nur die .bat als Programm vor, die wiederrum (s. Code der .bat) die vbs Datei ausführen soll.

Soweit klar?

Share this post


Link to post
Ich verstehe nicht genau was du meinst. Das Netzlaufwerk mit dem Buchstaben T:\ ist lokal eingebunden. Es hat auch bis dato reibungslos funktioniert. Nur seit der Umstellung auf Windows Server 2008 R2 Enterprise x64 funktioniert es dank der Aufgabenplanung nicht mehr:(.

 

Das LW T: ist aber nur vorhanden wenn der Admin angemeldet ist. Ein NW-LW ist ja nur Benutzerbezogen vorhanden. Arbeite so viel wie möglich mit UNC Pfaden. Bei lokalen Pfaden sollte man IMHO die vorhandenen Sytemvariablen nutzen.

Share this post


Link to post

Moin,

 

sehr wahrscheinlich steht das Laufwerk T: eben im Kontext des Tasks nicht zur Verfügung. Ein typischer Fehler, daher hat Dukel schlicht Recht mit seinen Hinweisen.

 

Entweder arbeitest du mit UNC-Pfaden, oder du prüfst das Vorhandensein von T: im Skript und mappst es bei Bedarf. Dann noch eine Fehlerprotokollierung ins Skript, und du siehst klarer.

Im Übrigen hat die Aufgabenplanung auch ein Fehlerprotokoll, zu dessen Inhalt du hier noch nichts gesagt hast.

 

Und zu deinem Batch: Warum genau rufst du ein Skript per Batch mit wscript.exe auf?! Das ist die grafische Ausführung und als solche hier völlig ungeeignet. Oder wer soll im Zweifel die Dialoge wegklicken? Richtig wäre "cscript.exe".

 

Gruß, Nils

Share this post


Link to post
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte überlege Dir, ob es nicht sinnvoller ist ein neues Thema zu erstellen.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Werbepartner:



×
×
  • Create New...