Symbolische koppelingen maken
Met de functie CreateSymbolicLink kunt u symbolische koppelingen maken met behulp van een absoluut of relatief pad.
Symbolische koppelingen kunnen absolute of relatieve koppelingen zijn. Absolute koppelingen zijn koppelingen die elk gedeelte van de padnaam opgeven; relatieve koppelingen worden bepaald ten opzichte van waar relatieve koppelingsaanduidingen zich in een opgegeven pad bevinden. Relatieve koppelingen worden opgegeven met behulp van de volgende conventies:
Puntconventies (. en ..) - bijvoorbeeld '.. \" lost het pad op ten opzichte van de bovenliggende map.
Namen zonder slashes (\), bijvoorbeeld 'tmp', lost het pad ten opzichte van de huidige map op.
Rootgerelateerd, bijvoorbeeld '\Windows\System32' wordt omgezet naar het 'huidige station:\Windows\System32'. directory
Relatief ten opzichte van de huidige map—bijvoorbeeld, als de huidige map "C:\Windows\System32" is, wordt "C:File.txt" tot "C:\Windows\System32\File.txt".
Notitie
Als u een huidige werkmap-relatieve koppeling opgeeft, wordt deze gemaakt als een absolute koppeling, omdat de huidige werkmap wordt verwerkt op basis van de gebruiker en de thread.
Een symbolische koppeling kan ook zowel verbindingspunten als gekoppelde mappen bevatten als onderdeel van de padnaam.
Symbolische koppelingen kunnen rechtstreeks verwijzen naar een extern bestand of een externe map met behulp van het UNC-pad.
Relatieve symbolische koppelingen zijn beperkt tot één volume.
Voorbeeld van een absolute symbolische koppeling
In dit voorbeeld bevat het oorspronkelijke pad 'X' een onderdeel, 'absLink', een absolute symbolische koppeling. Wanneer 'absLink' wordt aangetroffen, wordt het fragment van het oorspronkelijke pad tot en met 'absLink' volledig vervangen door het pad waarnaar wordt verwezen door 'absLink'. De rest van het pad na 'absLink' wordt toegevoegd aan dit nieuwe pad. Dit wordt nu het gewijzigde pad.
X: "C:\alpha\beta\absLink\gamma\file"
Koppeling: "absLink" verwijst naar "\\machineB\share"
Gewijzigd pad: "\\machineB\share\gamma\file"
Voorbeeld van een relatieve symbolische koppelingen
In dit voorbeeld bevat het oorspronkelijke pad ,x', een onderdeel 'koppeling', een relatieve symbolische koppeling. Wanneer 'koppeling' wordt aangetroffen, wordtkoppelingvolledig vervangen door het nieuwe fragment waarnaar wordt verwezen door 'koppeling'. De rest van het pad na 'link' wordt aan het nieuwe pad toegevoegd. Puntjes (..) in dit nieuwe pad vervangen onderdelen die vóór de puntjes (..) worden weergegeven. Elke set puntjes vervangt het voorgaande onderdeel. Als het aantal puntjes (..) het aantal onderdelen overschrijdt, wordt een fout geretourneerd. Als alle onderdelenvervanging is voltooid, blijft het uiteindelijke, gewijzigde pad behouden.
X: C:\alpha\beta\link\gamma\file
Koppeling: "link" wordt toegewezen aan "..\..\theta"
Gewijzigd pad: "C:\alpha\beta\..\..\theta\gamma\file"
Definitief pad: "C:\theta\gamma\file"