Crear vínculos simbólicos

La función CreateSymbolicLink permite crear vínculos simbólicos mediante una ruta de acceso absoluta o relativa.

Los vínculos simbólicos pueden ser vínculos absolutos o relativos. Los vínculos absolutos son vínculos que especifican cada parte del nombre de la ruta de acceso; los vínculos relativos se determinan con respecto a dónde se encuentran los especificadores de vínculo relativos en una ruta de acceso especificada. Los vínculos relativos se especifican con las siguientes convenciones:

  • Convenciones de punto (. y ..): por ejemplo, ".. \" resuelve la ruta de acceso relativa al directorio primario.

  • Nombres sin barras diagonales (\): por ejemplo, "tmp" resuelve la ruta de acceso relativa al directorio actual.

  • Relativo raíz: por ejemplo, "\Windows\System32" se resuelve en la "unidad actual:\Windows\System32". directory

  • Directorio de trabajo actual: por ejemplo, si el directorio de trabajo actual es "C:\Windows\System32", "C:File.txt" se resuelve en "C:\Windows\System32\File.txt".

    Nota Si especifica un vínculo relativo al directorio de trabajo actual, se crea como un vínculo absoluto, debido a la forma en que se procesa el directorio de trabajo actual en función del usuario y del subproceso.

Un vínculo simbólico también puede contener puntos de unión y carpetas montadas como parte del nombre de la ruta de acceso.

Los vínculos simbólicos pueden apuntar directamente a un archivo o directorio remoto mediante la ruta de acceso UNC.

Los vínculos simbólicos relativos están restringidos a un único volumen.

En este ejemplo, la ruta de acceso original contiene un componente , "x", que es un vínculo simbólico absoluto. Cuando se encuentra 'x', el fragmento de la ruta de acceso original hasta y la inclusión de 'x' se reemplaza por completo por la ruta de acceso a la que apunta 'x'. El resto de la ruta de acceso después de "x" se anexa a esta nueva ruta de acceso. Ahora se convierte en la ruta de acceso modificada.

X: "C:\alpha\beta\absLink\gamma\file"

Vínculo: "absLink" se asigna a "\\machineB\share"

Ruta de acceso modificada: "\\machineB\share\gamma\file"

En este ejemplo, la ruta de acceso original contiene un componente "x", que es un vínculo simbólico relativo. Cuando se encuentra 'x', 'x' se reemplaza por completo por el nuevo fragmento al que apunta "x". El resto de la ruta de acceso después de "x", se anexa a la nueva ruta de acceso. Cualquier punto (..) de esta nueva ruta de acceso reemplaza los componentes que aparecen antes de los puntos (..). Cada conjunto de puntos reemplaza el componente anterior. Si el número de puntos (..) supera el número de componentes, se devuelve un error. De lo contrario, cuando haya finalizado todo el reemplazo de componentes, la ruta de acceso modificada final permanecerá.

X: C:\alpha\beta\link\gamma\file

Link: "link" se asigna a ".. \.. \theta"

Ruta de acceso modificada: "C:\alpha\beta\.. \.. \theta\gamma\file"

Ruta final: "C:\theta\gamma\file"

Vínculos simbólicos

Enlaces físicos y uniones

Asignar nombres a archivos, rutas de acceso y espacios de nombres