Sample code for 30+ languages & platforms
PureBasic

Create Symbolic Link

See more FileAccess Examples

Demonstrates how to create a symbolic (soft) link.

Note: This example requires Chilkat v9.5.0.77 or greater.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkFileAccess.pb"

Procedure ChilkatExample()

    success.i = 0

    ; Chilkat supports symbolic links on both Windows and non-Windows operating systems.
    ; Note: On Windows, symbolic links and Windows shortcuts are two different things.
    ; On the Windows operating system, a process requires a special privilege to create
    ; a symbolic link (unless running as administrator).  

    fac.i = CkFileAccess::ckCreate()
    If fac.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    ; Here we create a symbolic link to point to qa_data/hamlet.xml
    ; 
    target.s = "qa_data/hamlet.xml"
    symlink.s = "qa_output/symlink_hamlet.xml"
    success = CkFileAccess::ckSymlinkCreate(fac,target,symlink)
    If success <> 1
        Debug CkFileAccess::ckLastErrorText(fac)
        CkFileAccess::ckDispose(fac)
        ProcedureReturn
    EndIf

    ; Here we create a directory symbolic link.  The target is a directory (not a regular file)
    target = "qa_data/xml/"
    symlink = "qa_output/xml_dir"
    success = CkFileAccess::ckSymlinkCreate(fac,target,symlink)
    If success <> 1
        Debug CkFileAccess::ckLastErrorText(fac)
        CkFileAccess::ckDispose(fac)
        ProcedureReturn
    EndIf

    Debug "Success."


    CkFileAccess::ckDispose(fac)


    ProcedureReturn
EndProcedure