2010-09-01 7 views
7

Es gibt CreateHardLink Funktion zum Erstellen von Hardlinks. (Seit Win2000)
Und es gibt CreateSymbolicLink Funktion seit Vista wurde veröffentlicht.Wie erstellt man einen Junction Point mit WinApi?

Aber warum gibt es keine CreateJunction?

Wie macht mklink eine Kreuzung?
Und wie schreibe ich Codes, um Junction in meiner App zu machen?

Antwort

6

Sie sind Analysepunkte, also ist FSCTL_SET_REPARSE_POINT die magische FSCTL. Hier ist ein Beispiel, es nie versucht, aber scheint recht:

http://www.flexhex.com/docs/articles/hard-links.phtml

-Scott

+0

Beachten Sie, dass ab Windows Vista/Server 2008 auch die Funktion [CreateSymbolicLink] (http://msdn.microsoft.com/en-us/library/aa363866.aspx) verwendet werden kann. – efotinis

3

Zur Zeit ist keine integrierte in einzelne Funktion zum Erstellen von Übergängen wie es für symbolische Links oder harte Links ist. Wie Snoone sagte, es ist ein Analysepunkt, also müssen Sie DeviceIoControl verwenden, um damit zu interagieren. Wenn ich mich richtig erinnere, ist die Quelle, die er verlinkt, dieselbe Quelle, mit der ich herumgespielt habe, als ich versuchte, das herauszufinden, und ich glaube nicht, dass ich irgendwelche Probleme damit hatte.

Alternativ, wenn Sie nicht gegen die Verwendung einer externen Bibliothek in Ihrer Anwendung sind, und Sie werden Funktionen zum Lesen/Prüfen/Löschen von Junctions benötigen, sollten Sie in reparselib suchen, die eine ziemlich anständige Bibliothek ist Umbruchknoten, symbolische Links, Bereitstellungspunkte und benutzerdefinierte Analysepunkte.

Verwandte Themen