Ich versuche, von SAP Business Objects generierte (und auf einem Netzlaufwerk (M:) gespeicherte) Dateien auf das Google File Stream-Laufwerk (G:) zu kopieren. Ich habe den Windows-Befehl Robocopy verwendet, mit dem ich bereits vorhandene Dateien überspringen kann. Meine (vereinfachte) Batchdatei sieht folgendermaßen aus:
@robocopy "M:\aFolder" "g:\My Drive\DataDrops" "*.txt" /XO >> Logfile.txt
Das funktioniert einwandfrei, wenn ich darauf doppelklicke oder es über die Eingabeaufforderung ausführe. Ich möchte es aber so einrichten, dass es grundsätzlich etwa alle 10 Minuten nach neuen Dateien sucht. Also habe ich eine Windows-Aufgabe erstellt, um die Batchdatei auszuführen. Aber wenn die Aufgabe sie ausführt, wird ein Eingabeaufforderungsfenster mit der Meldung „Zugriff verweigert“ geöffnet.
Ich habe die Aufgabe so eingestellt, dass sie als ich selbst ausgeführt wird und nur, wenn ich angemeldet bin, aber irgendwie wird mir der Zugriff verweigert, wenn die Aufgabe ausgeführt wird. Ich weiß nicht, ob die Aufgabe nicht auf das Netzwerklaufwerk, das Google File Stream-Laufwerk oder mein lokales Laufwerk (auf dem das Skript gespeichert ist) zugreifen darf.
Antwort1
Die Lösung bestand also darin, es nach Powershell zu verschieben, dann Powershell (nicht das Skript selbst) zu planen und das Skript anschließend als Parameter zu übergeben.
Also ja: Planen Sie Powershell mit den Parametern:-executionpolicy bypass -file YourScript.ps1
Der zweite Teil der Lösung besteht darin, keine zugeordneten Netzwerklaufwerke zu verwenden, sondern die \\servername\filepath\
Notation im Netzwerkdateinamen zu verwenden, da der Scheduler das zugeordnete Laufwerk anscheinend nicht erkannt hat. (Das Google Drive funktioniert immer noch, darüber freue ich mich sehr)