Creación de 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 en relación con dónde se encuentran los especificadores de vínculo relativos en una ruta de acceso especificada. Los vínculos relativos se especifican mediante 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.

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

  • 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, 'X', contiene un componente, 'absLink', que es un vínculo simbólico absoluto. Cuando se encuentra 'absLink', el fragmento de la ruta de acceso original hasta 'absLink' se reemplaza por completo por la ruta de acceso a la que apunta 'absLink'. El resto de la ruta de acceso después de 'absLink' 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, 'x', contiene un componente, 'link', que es un vínculo simbólico relativo. Cuando se encuentra 'link', 'link' se reemplaza por completo por el nuevo fragmento al que apunta 'link'. El resto de la ruta de acceso después de 'link' se anexa a la nueva ruta de acceso. Los puntos (..) de esta nueva ruta de acceso reemplazan 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 ha finalizado todo el reemplazo de componentes, la ruta de acceso final modificada permanece.

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

Vínculo: "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

Vínculos físicos y uniones

Asignación de nombres a archivos, rutas de acceso y espacios de nombres