Wie kann ich ein Rechtsklick-Menüelement erstellen, um einen Knotenpunkt zu bearbeiten?

15193
Tom Wijsman

Da ich zwar eine SSD verwende, aber in der Größe begrenzt ist, möchte ich in der Lage sein, Junction-Points zu verwenden, um Dateien und Verzeichnisse auf meiner Festplatte neu zuzuordnen. Dies wäre ideal, wenn ich eine Shell-Erweiterung dafür erstellen könnte, die dies tut.

Das ideale Verhalten wäre, wenn Sie mit der rechten Maustaste auf ein Verzeichnis oder einen Knotenpunkt klicken und eine Option
"Knotenpunkt manipulieren" verwenden, in der ich die folgenden Aktionen ausführen kann:

  • Erstellen: Verschieben Sie das Verzeichnis für ein Verzeichnis an einen von mir angegebenen Ort und ersetzen Sie es durch einen Knotenpunkt.
    (Dir) C: \ Beispiel wird zu (JP) C: \ Beispiel -> D: \ Beispiel

  • Swap: Für einen Knotenpunkt möchte ich den Knotenpunkt mit seiner Position tauschen.
    (JP) C: \ Beispiel -> (Dir) D: \ Beispiel wird zu (Dir) C: \ Beispiel <- (JP) D: \ Beispiel

    Das heißt, es würde den Knotenpunkt entfernen, die Daten verschieben und einen umgekehrten Knotenpunkt platzieren.

  • Entfernen: Für einen Knotenpunkt möchte ich ihn entfernen und das Verzeichnis zurückschieben.
    (JP) C: \ Beispiel -> (Dir) D: \ Beispiel wird zu (Dir) C: \ Beispiel

Meine wichtigsten Fragen:

  • Welchen Ansatz sollte ich dafür nehmen? Skript? Bash? Ausführbar?
  • Wie erstelle ich den Menüeintrag?

Weniger wichtige Fragen:

  • Gibt es schon eine solche Lösung?
  • Gibt es bessere Befehle oder API-Aufrufe zum Prüfen und Bearbeiten von Knotenpunkten?

Ich kenne bereits Microsoft mklinkund Sysinternals junction.

11
Nur um es rauszulassen - ich kann mir nicht wirklich eine Situation vorstellen (oder die Situation, die Sie zitiert haben), in der dies notwendig ist, dh ich würde andere Ansätze versuchen, um das umfassendere Problem zu lösen, was auch immer es ist. Warum sollten Sie SSD-Dateien mit der Festplatte verknüpfen? cregox vor 14 Jahren 0
Da nicht alles auf die SSD passt, muss ich Dinge verschieben, die nicht schnell auf meine Festplatte gebracht werden müssen, ohne irgendetwas zu zerbrechen. Ich möchte keine Problemumgehung, ich möchte eine Lösung. Tom Wijsman vor 14 Jahren 0
Wir haben einen Blogbeitrag zum Thema [Maximierung der Lebensdauer Ihrer SSD] (http://blog.superuser.com/2011/05/10/maximizing-the-lifetime-of-your-ssd/) veröffentlicht. Tom Wijsman vor 13 Jahren 0
verwandt: http://superuser.com/questions/95862/what-directories-in-a-windows-7-ssd-install-would-you-link-junction-to-an-hdd cregox vor 13 Jahren 0

2 Antworten auf die Frage

17
Isxek

Haben Sie sich bereits gefragt, ob solche Lösungen bereits existieren ? Haben Sie sich Junction Link Magic oder Link Shell Extension angesehen ?

Junction Link Magic ermöglicht das Erstellen, Ändern und Entfernen von Knotenpunkten. Es ist Freeware und unterstützt Windows 7.

Link Shell Extension bietet auch die gleiche Funktionalität und ist auch Freeware. Es unterstützt auch Windows 7.

UPDATE : Die ursprüngliche Site für Junction Link Magic ist jetzt in Betrieb. Ich habe einen Softpedia-Link für diejenigen ersetzt, die JLM noch installieren möchten.

Aus irgendeinem Grund erinnere ich mich vage daran, dass @TomWij diese Software in einem Kommentar zu einer Hardlink / Junction-Point-Frage hier auf SU erwähnt. Ich kann die * aktuelle * Frage momentan nicht finden. Isxek vor 14 Jahren 0
Genau, aber ich will den besten Weg, es zu tun, ich wusste jedoch nicht von der Erweiterung, ich überprüfe es jetzt ... Tom Wijsman vor 14 Jahren 0
Es macht es unkompliziert, mit Knotenpunkten zu arbeiten. Ich verwende dies vorerst und lasse es offen, um auf eine bessere Lösung zu warten ... Ich wünschte, der Quellcode wäre verfügbar, damit ich den hinzugefügten Text entfernen könnte den Verzeichnisnamen und zum Entfernen der Optionen, die ich niemals verwenden werde. Tom Wijsman vor 14 Jahren 0
Nur hinzuzufügen: Sie haben diese wahrscheinlich bereits gefunden, aber hier sind ein paar Links zu CodeProject (mit Quelle), die sich auf Verbindungspunkte beziehen: http://www.codeproject.com/KB/winsdk/junctionpoints.aspx und http: / /www.codeproject.com/KB/vista/ReparsePointID.aspx Isxek vor 14 Jahren 0
Scheint interessant zu sein, vielleicht habe ich hier entweder eine Kopfgeld ausgegeben oder beschloss, eines Tages etwas Forschung und Implementierung zu verbringen ... Tom Wijsman vor 14 Jahren 0
Nach einiger Zeit scheint es gut zu funktionieren. Ich werde nicht so viel tauschen, dass ich die Schritte manuell machen kann ... Tom Wijsman vor 14 Jahren 0
2

Ich verwende einfach MKLINKdas, das in Windows 7 integriert ist. Sie werden wahrscheinlich Batchdateien schreiben, aber es ist nicht schwer zu benutzen.