Jump to content

Bitte um Hilfe bei Batchscript...


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hi ihr,

 

ich hab wieder mal Probleme mit einem geliebten Batchskript.

Und zwar soll das skript ein Netzlaufwerk verbinden sofern noch nicht vorhanden und per robocopy files kopieren. Sieht vom Aufbau her so aus:

 

setlocal enabledelayedexpansion
net use | find <laufwerk>

if %ERRORLEVEL%==1 (
  <Verbinde Laufwerk>
  set returncode=!ERRORLEVEL!
  if not !RETURNCODE!==0 (
     echo Fehler aufgetreten > logfile
     echo msgbox "Fehler" ^& Chr(13) ^& "zweite Zeile" > in den autostart
     exit 1
  ) ELSE (
     Files kopieren...
  )
) ELSE (
  Files kopieren...
)

Nun verhält sich diese Mistsau so (sorry aber ich bin echt schon so sauer), dass alles perfekt funktionert wenn das laufwerk gefunden werden kann. Wenn es allderings nicht gefunden wird, wird es zwar noch erfolgreich verbunden, aber dann (und jetzt kommts) spring er trotzdem in if not !RETURNCODE!==0 ( rein. Und als ob das nicht schon falsch genug wäre: zusätzlich wird dabei nur der 'exit' Befehl ausgeführt und nicht die echo's die noch davon stehen?

 

:confused::confused::confused::confused:

Link zu diesem Kommentar

@Cybquest

Danke für die Info...

 

Das es bei dir geht, hat mich jetzt Motiviert mich abermals damit zu spielen und jetzt weiß ich, dass diese Zeile dran Schuld ist:

echo msgbox "Fehler" ^& Chr(13) ^& "zweite Zeile" > in den autostart

Im "echten" Skript schaut die Zeile ein bisschen anders aus, aber was ich da machen möchte ist schnell beschrieben: Bei einem Fehler, möchte ich das ein .vbs Skript erstellt wird, welches einfach nur eine Messagebox enthalt die darauf hinweist, dass bei der Sicherung was schief gegangen ist. Der Code hierfür soll also einfach per 'echo' in ein File mit der Dateiendung .vbs geschrieben werden und die soll direkt in den Autostart Ordner eines bestimmten Userprofils landen.

Ich weiß, etwas seltsame Methode der Benachrichtigung, aber Mail senden etc. steht mir nicht zur verfügung.

 

<< 30min später >>

 

So hab's geschafft. Der Fehler war das: ^& Chr(13) ^&

Irgendwie hat er das nicht genommen, trotz escapen.

Link zu diesem Kommentar

Moin,

 

Meine Anforderung?

Ich brauche eine Lösung für das Problem, warum er in if not !RETURNCODE!==0 ( reinspringt und warum er dort nur den exit Befehl ausführt! ;)

 

das ist keine Anforderung. Auf der Basis reden wir nicht über eine Lösung für dein Problem (welches du ja nicht benennst), sondern über das Problem deiner Lösung.

 

Gruß, Nils

Link zu diesem Kommentar

@NilsK

Mein Problem ist nicht, das ich keine Lösung habe bzw. hatte. Ich bin/war nicht auf der Suche nach einer Lösung für mein Problem, sondern auf der Suche nach einer Fehlerbeseitigung für meine Lösung. Ich versteh nicht warum du mir eine andere Lösung für mein Problem aufdrängen willst. Nicht das ich undankbar erscheinen will, aber das bringt doch nix...

 

@Cybquest

Net Send oder msg würde theoretisch auch gehen, aber das ist auch eher unzuverlässig. Bei einem fehlgeschlagenen Verbindungsversuch mit dem Netzlaufwerk aufgrund eines Netzwerkproblems, wäre Net Send oder msg nicht so eine gute Wahl.

Ich denke das ich hier die beste Methode gewählt habe,... so wird halt der User der diesen PC benutzt darauf aufmerksam gemacht das etwas schief gegangen ist. Ich muss mich nur noch darauf verlassen, dass er mich dann auch anruft. ^^

 

Danke für die Hilfe! :)

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...