Skript wird nicht ausgeführt

  • #1
J

jan2

Bekanntes Mitglied
Themenersteller
Dabei seit
19.03.2002
Beiträge
606
Reaktionspunkte
0
Moin !

ich habe ein Skript das auch andere Dateien ausführt. Wenn ich es manuell in dem betreffenden Verzeichnis ausführe, dann ist alles OK.

Nun habe ich das im Aufgabenplaner hinterlegt und es wird auch gestartet - aber die von dort aufgerufenen Dateien werden nicht gefunden.

Ich vermute nun, dass es damit zusammenhängt, das es nicht im richtigen Verzeichnis ausgeführt wird.

Kann die Annahme richtig sein und wie kann man ggf. abhilfe schaffen ?

Gruß Jan :)
 
  • #2
ich vermute, dass die Einstellungen nicht stimmen ...

Unter Allgemein wird ein aussagekräftiger Name angegeben und die gelben Markierungen sollten aktiviert oder beachtet werden.

Aufgabenpl1.png


Unter der Registerkarte Trigger auf den Button Neu klicken und unter Aufgabe starten Beim Start auswählen.

Aufgabenpl2.png


Nach [OK] landest du wieder unter Trigger. Klicke erneut auf den Button Neu wähle unter Aufgabe starten diesmal Nach einem Zeitplan aus. Kann aber auch weggelassen werden, wenn das Skript nur einmal ausgeführt werden soll.

Aufgabenpl3.png


Registerkarte Aktionen Button Neu - unter Aktion sollte Programm starten schon ausgewählt sein, ggf. ändern. Unter Programm/Skript wird der [komplette Pfad] zum Skript eingefügt mit Anführungszeichen (am besten mit den Button Durchsuchen... auswählen. Argument hinzufügen (optional) = nix, habe mich vertan.

Aufgabenpl4.png


Registerkarte Einstellungen - die Option Aufgabe so schnell wie möglich nach einem verpassten Start ausführen noch aktivieren, die anderen Optionen so belassen. Nach [OK] wird dein Kennwort verlangt. Gebe dein Benutzerkennwort ein, mit dem du dich an Windows anmeldest.

Aufgabenpl5.png


Klappt es jetzt?

pan_fee
 
  • #3
Hallo pan_fee,

vielen Dank für die ausführliche Anleitung - ich sage gleich, das ich das nicht alles eingestellt habe - warum?

Ein anderes Skirpt läuft genau mit denselben Einstellungen und wenn ich es richtig sehe sind die von Dir gemachten Vorschläge primär für das Starten mit einem anderen Account ect.

Mein Skript startet ja - das Problem ist ja vielmehr das aus dem Skript aufgerufene Unterskripte nicht gefunden werden können.

Normalerweise ist es doch so, das ein Skript, das ohne absoluten Pfad angegeben wird, immer im aktuellen Verzeichnis gesucht wird. Deshalb gibt es ja bei Verknüpfungen auch Ausführen in.. Einen solchen Eintrag suche ich nun im Aufgabenplaner - oder eben eine alternative.

Eine Idee ?

Gruß Jan :)
 
  • #4
jan2 schrieb:
und wenn ich es richtig sehe sind die von Dir gemachten Vorschläge primär für das Starten mit einem anderen Account ect.
richtig

jan2 schrieb:
Mein Skript startet ja - das Problem ist ja vielmehr das aus dem Skript aufgerufene Unterskripte nicht gefunden werden können.
ups, überlesen...
Das Hauptskript soll weitere Unterskripte ausführen?

jan2 schrieb:
Normalerweise ist es doch so, das ein Skript, das ohne absoluten Pfad angegeben wird, immer im aktuellen Verzeichnis gesucht wird. Deshalb gibt es ja bei Verknüpfungen auch Ausführen in.. Einen solchen Eintrag suche ich nun im Aufgabenplaner
sorry, sowas ist mir nicht bekannt.

pan_fee
 
  • #5
trotzdem danke erst einmal - vielleicht findet sich noch ein anderer.

gruß Jan :)
 
  • #6
Ruf die Unterskripte doch einfach mit absoluter Pfadangabe auf.
Oder nutze die stattdessen Sytemvariablen wie z.B. WINDIR oder APPDATA, um den Pfad zusammenzusetzen.
Oder wechsele als erstes in deinem Hauptskript das aktuelle Verzeichnis auf das richtige (in Batchfiles mit->CD').
 
  • #7
hi !

danke für den Hinweis - das muss ich mir man ansehen die nächsten Tage.

Gruß Jan :)
 
  • #8
jan2 schrieb:
ich habe ein Skript das auch andere Dateien ausführt. Wenn ich es manuell in dem betreffenden Verzeichnis ausführe, dann ist alles OK.

Nun habe ich das im Aufgabenplaner hinterlegt und es wird auch gestartet - aber die von dort aufgerufenen Dateien werden nicht gefunden.

das verzeichnis ist nicht im suchpfad von windows, daher findet er die anderen scripte nicht wenn du das aus dem taskmanager startest. also mußt du die PATH Variable anpassen oder wie IrksEye vorschlägt die skripte mit absoluter pfadangabe starten. du kannst auch noch versuchen, bevor du die skripte aufrufst im hauptskript via cd pfadangabe direkt in das verzeichnis zu wechseln wo sich die anderen skripte befinden. auch kannst du, wenn du mehrer skripte aus dem hauptscript aufrufst, diese einzelnen skripte mit call auffrufen, dann kommt die shell nach dem ausführen des skript wieder in das hauptskript zurück so dass der basispfad wieder der aufrufpfad vom ersten skript ist. man kann den pfad auch mit dem befehl PATH ; ausschalten, dann sucht das cmd immer nur im aktuellen verzeichnis, vorausgesetzt du stehst im richtigen. mehr dazu findest du in der hilfe (im cmd help und den befehl eingeben)

zb. so

D:\Dokumente und Einstellungen\hugo>help path
Legt den Suchpfad für ausführbare Dateien fest oder zeigt diesen an.

PATH [[Laufwerk:]Pfad[;...][;%PATH%]
PATH ;

PATH ; Löscht den Suchpfad und lässt CMD.EXE nur in dem aktuellen
Verzeichnis suchen.
PATH Ohne Parameter zeigt den aktuellen Pfad an.
%PATH% In der Befehlszeile bewirkt ein Erweitern des alten Pfades mit
den neuen Angaben.

gruß

hugo
 
Thema:

Skript wird nicht ausgeführt

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.836
Beiträge
707.957
Mitglieder
51.488
Neuestes Mitglied
elkhse
Oben