Seite 1 von 1

Symbolik Link erstellen (ab Vista)

Verfasst: 15.04.2010 16:58
von ts-soft
Diese neuen symbolischen Links können nervig, aber auch nützlich sein. Die Erstellung benötigt
Administrative Rechte! Vielleicht kanns ja der eine oder andere gebrauchen, oder rsbasic packts in
seine Sammlung :wink:

weitere infos: http://msdn.microsoft.com/en-us/library/aa363866.aspx

Code: Alles auswählen

; Hilfsfunktion zur Ausgabe der Fehlerbeschreibung
Procedure.s GetLastErrorStr(error = 0)
  Protected Buffer, result.s
  
  If Not error
    error = GetLastError_()
  EndIf
  If FormatMessage_(#FORMAT_MESSAGE_ALLOCATE_BUFFER|#FORMAT_MESSAGE_FROM_SYSTEM,0,error,0,@Buffer,0,0)
    result = PeekS(Buffer)
    LocalFree_(Buffer)
    ProcedureReturn result
  EndIf
EndProcedure
;

#SYMBOLIC_LINK_FLAG_DIRECTORY = 1 ; The link target is a directory

Prototype CreateSymbolicLink(lpSymlinkFileName.p-Unicode, lpTargetFileName.p-Unicode, dwFlags)

Global CreateSymbolicLink.CreateSymbolicLink

CreateSymbolicLink = GetFunction(OpenLibrary(#PB_Any, "kernel32.dll"),  "CreateSymbolicLinkW")

; beispiel
If Not CreateSymbolicLink(GetTemporaryDirectory() + "PureBasic_Dir", #PB_Compiler_Home, #SYMBOLIC_LINK_FLAG_DIRECTORY)
  Debug GetLastErrorStr()
Else
  RunProgram(GetTemporaryDirectory() + "PureBasic_Dir")
EndIf

Gruß
Thomas

Re: Symbolik Link erstellen (ab Vista)

Verfasst: 16.04.2010 20:24
von RSBasic
@ts-soft
Sehr schöner Code :allright:
ts-soft hat geschrieben:oder rsbasic packts in seine Sammlung
Jap das werde ich :mrgreen: (natürlich mit Namensnennung)

Re: Symbolik Link erstellen (ab Vista)

Verfasst: 16.04.2010 20:34
von ts-soft
RSBasic hat geschrieben:Jap das werde ich :mrgreen:
Danke, weil hier wird es wohl früher oder später untergehen.

Re: Symbolik Link erstellen (ab Vista)

Verfasst: 17.04.2010 12:01
von Andesdaf
Danke für den Code. :allright: