In diesem Artikel wird hauptsächlich die alternative Methode für unzureichende Berechtigungen der ASP-Verschiebungsdateifunktion „movefile“ vorgestellt. Anschließend wird der tatsächliche Grund dafür erläutert.
Ich arbeite derzeit an einem Projekt, das darin besteht, eine Anweisung zu schreiben, um alle Dateien auf dem Laufwerk D auf das Laufwerk E zu verschieben. Es ist gut, es in der lokalen XP-Umgebung zu testen.
Nach der Installation auf dem Windows 2003-Server wird jedoch angezeigt, dass die Berechtigungen nicht ausreichen.
Mein IIS-Website-Verzeichnis befindet sich auf dem Laufwerk D, und das Laufwerk E ist nur ein neu hinzugefügtes Volume. Einige Dateien sind sehr groß und es gibt viele, aber das Laufwerk D reicht nicht aus, daher habe ich mir diese Strategie ausgedacht.
Nach der Suche auf Baidu bestehen viele dieser Probleme lediglich darin, die Berechtigungen des E-Laufwerks zu erhöhen oder das E-Laufwerk als virtuelles Verzeichnis zu verwenden.
Aber es funktioniert nicht und die Erinnerung ist immer noch da. Der einzige Unterschied besteht darin, dass ich ein dynamisches Volume verwende, während es unter XP ein Basisvolume ist, das ich nicht ändern möchte.
Endlich die folgende Methode gefunden:
Bei Verwendung der Movefile von fso sind die Berechtigungen nicht ausreichend, sodass der Code nicht ausgeführt werden kann.
Verwenden Sie also copyfile und dann deletefile, um unnötigen Ärger zu vermeiden.
Im Augenblick:
Kopieren Sie den Codecode wie folgt:
Setze fso=CreateObject("scripting.filesystemobject")
fso.MoveFile „Dateipfad“, „Ziel“
Dies wird Probleme verursachen.
verwenden:
Kopieren Sie den Codecode wie folgt:
Setze fso=CreateObject("scripting.filesystemobject")
fso.CopyFile „Dateipfad“, „Ziel“
fso.DeleteFile „Dateipfad“
Damit wurde das Problem entscheidend gelöst. Es kann kopiert, aber nicht verschoben werden.
4.30-Update
Nach einigem Basteln stellte sich heraus, dass es sich nicht um ein Problem mit den Berechtigungen des Laufwerks E handelte, sondern um ein Problem mit den Berechtigungen des Laufwerks D, also um ein Problem mit den Berechtigungen des IIS-Website-Verzeichnisses.
Fügen Sie dem Laufwerk D ein Internet-Gastkonto hinzu, d. h. ein Konto, das mit IUSR_ beginnt. Dieses Konto ist ein IIS-Konto.
Dann ist die Verwendung von MoveFile kein Problem.
Wenn Sie eine Datei verschieben oder löschen möchten, sollten Sie zunächst die Berechtigungen der Quelldatei überprüfen, nicht die Berechtigungen der Zieldatei.
Tutorials im Internet sind wirklich schädlich.