2008-09-09 4 views
3

Wenn ich meine XP-Maschine defragmentiere, merke ich, dass es einen Block von "Unmovable Files" gibt. Gibt es ein Dateiattribut, mit dem ich meine eigenen Dateien unbeweglich machen kann?Unbewegliche Dateien unter Windows XP

Nur um zu verdeutlichen, möchte ich einen Weg, Windows programmgesteuert zu sagen, dass eine Datei, die ich erstelle, nicht verschiebbar sein sollte. Ist das möglich und wenn ja, wie kann ich das tun?

Danke,

Terry

Antwort

9

Viele Systemdateien können nach dem Systemstart nicht verschoben werden, z. B. die Auslagerungsdatei und Registrierungsdatenbankdateien.

This utility wird ausgeführt, bevor Windows startet, um diese Dateien zu defragmentieren. Ich habe es so eingestellt, dass es bei jedem Start ausgeführt wird, und es funktioniert gut für mich auf mehreren Computern.

Beachten Sie, dass das erste Mal, wenn Sie mit diesem Dienstprogramm zum Starten starten, mehrere Minuten zur Defragmentierung benötigen. Nach diesem ersten Durchlauf endet es in nur 3 oder 4 Sekunden.

Edit0: Um auf Ihre Klärung zu reagieren - dieser Link sagt Windows hat die Auslagerungsdatei und die Registry-Dateien für den exklusiven Zugriff geöffnet markiert. Sie sollten also dasselbe mit dem API-Aufruf LockFile machen können. Dies ist jedoch kein Attribut der Datei selbst. Sie müssten tatsächlich ein Hintergrundprogramm ausführen, das die Datei für den exklusiven Zugriff sperrt.

+0

Wenn es fehlschlägt Pagedefrag mit jedem Neustart versuchen soll, eine der Dateien defragmentieren und eine Weile dauern kann, daher die Option einmal ausführen. Dies bedeutet nicht, dass es kein großartiges Werkzeug ist, und ich empfehle es wärmstens. +1 von mir. –

+0

Es sieht so aus, als ob Microsoft das generft hat. Ihr Tool beschwert sich darüber, dass ich kein Administrator bin, obwohl ich absichtlich mit der rechten Maustaste darauf geklickt habe, um es als Administrator auszuführen. – Trejkaz

0

Ich gehe davon aus Sie den Defragmentierer verwenden, das mit Windows geliefert wird. Einige kommerzielle wie DiskKeeper können einige dieser Dateien (normalerweise Systemdateien) verschieben. Sie können ihre Testversionen ausprobieren.

1

Dies bedeutet normalerweise, dass die Datei von einem bestimmten Prozess verwendet wird. Wenn Sie defragmentieren, werden Sie wahrscheinlich viele Systemdateien sehen. Wenn die Datei rechtmäßig verschoben werden kann und festsitzt (sie wird von einem Prozess gehalten, der beim Start ausgeführt wird, aber nicht ausgeführt werden sollte), ist das Entfernen aller Berechtigungen für die Datei, Neustarten, Stellen Sie die Berechtigungen wieder her und löschen Sie dann die Datei/führen Sie das Programm aus, das versucht, es zu verwenden.

1

Ich nehme an, der hässliche Weg ist, eine Anwendung beim Start zu starten, überprüfen Sie alle paar Sekunden, wenn die Defragmentierung ausgeführt wird, und wenn ja, öffnen Sie die Datei im exklusiven Modus.

Das ist wirklich hässlich und ich empfehle es nicht, es sei denn, es gibt keine sauberere Lösung.

1

Terry, die Antworten erwähnen alle Möglichkeiten, um zu verhindern, dass Dateien während der Defragmentierung unbeweglich werden. Aus Ihrer Frage scheint es, dass Sie in der Tat wollen Ihre persönlichen Dateien unbeweglich machen. Können Sie bitte klarstellen, was ansprechend ist, wenn Sie Ihre Dateien unbeweglich machen wollen?

0

Für eine etwas umfassendere Lösung versuchen Sie Raxco's PerfectDisk. Obwohl es ein kommerzielles Produkt ist, leistet es einen sehr guten Job und unterstützt die Boot-Zeit-Defragmentierung von Systemdateien. Die erste Defragmentierung dauert länger als DiskKeeper, ist aber ein Single-Pass-Defragger und unterstützt die Defragmentierung mit sehr wenig freiem Speicherplatz auf dem Laufwerk.Insgesamt ist es ein viel schlaueres Defragmentierprogramm als jedes andere, das ich gesehen habe und Systeme jeder Größe unterstützt.

http://www.raxco.com/

2

Es gibt keine Datei-Attribute, die Sie auf Ihre Dateien einstellen können sie als unbeweglich zu markieren. Die einzige Möglichkeit, dass eine Datei während der Defragmentierung nicht verschoben werden kann (denke ich), besteht darin, dass ein anderer Prozess die Datei geöffnet hat (zum Lesen oder Schreiben bin ich nicht einmal sicher, ob die Datei im exklusiven Modus geöffnet sein muss)).

Ehrlich gesagt, kann ich nicht aus einem Grund denken, dass Sie Ihre Dateien wollen würde sich nicht zu bewegen, es sei denn, Sie spezifische Anforderungen zu haben, wo auf der Plattenscheibe Ihre Dateien befinden. Defragmentierungs sollte in der Regel zu einem schnelleren Plattenzugriff führen und das scheint in allen Fällen :-)

0

ersten Versuch wünschen zu bewegen (oder löschen), um die Dateien im abgesicherten Modus. Wenn nicht, versuchen Sie, die Dateien mit Linux zu verschieben (oder zu löschen).

aber vorsichtig sein, wenn diejenigen, die Windows-Systemdateien sind, dann sind fehlgeschlagen Sie Ihre Fenster booten.

Einige Gründe, warum die Dateien unbeweglich sind, sind: Die Dateigröße ist zu groß, die Dateien befinden sich in geöffnetem/verwendetem Zustand, unzureichende Sicherheitsrechte, Zugriff durch andere Computer und viele andere Dinge.