Seite 1 von 1

Create Symbolic Link

Verfasst: 21.11.2015 01:44
von FooFenrir
Hallo,

Für ein Automatisches Setup Programm muss ich ein SymLink erstelen.

Ähnlich wie das DOS Befehl mklink. Beispiel mklink /j link target.

Im Forum habe etwas gefunden aber es funktioniert nicht (http://www.forums.purebasic.com/english ... 12&t=30004)

Ich bekomme auf Zeile 18 (CallFunctionFast(*SymLfunc, in_lnkname, in_targetname, dw_flag)) bekomme ich die Fehlermeldung
Line 18: Bad parameter type, number expected instead of string
Ich habe PB 5.40 LTS auf Win10

Irgend ein Tipp oder Code

Vielen Herzlichen Dank

Re: Create Symbolic Link

Verfasst: 21.11.2015 02:17
von CSHW89
CallFunctionFast kann seit einigen Versionen nur noch Integer aufnehmen. Um Strings zu übergeben, musst du deren Adresse übergeben. Also vor in_lnkname und in_targetname einfach ein @ schreiben.

lg Kevin

Re: Create Symbolic Link

Verfasst: 21.11.2015 11:52
von RSBasic

Re: Create Symbolic Link

Verfasst: 21.11.2015 19:43
von FooFenrir
Vielen Dank an alle!!!

@CSHW89; mit Recht. Leider in PB bin ich wirklich ein Anfänger und lasse mich „beraten“ meistens mit Lösungen aus dem Forum damit ich schnell etwas zusammenstellen kann. So eine Art Learning by Doing“. Bei PB leider (bzw. zum Glück) sind die Befehle immer aufs Neue.

@ RSBasic; Herzlichen Dank für den Listing. Funktioniert mit admin. Wunderbar.

Re: Create Symbolic Link

Verfasst: 21.11.2015 20:46
von _JON_
RSBasic hat geschrieben:Damit funktioniert es: http://www.rsbasic.de/aktualisierung/wi ... stellen.pb
Vielleicht kannst bei Gelegenheit nach eine "If CreateSymbolicLink" Abfrage hinzufügen, sonst crashed das unter Windows XP.

Re: Create Symbolic Link

Verfasst: 21.11.2015 23:46
von RSBasic
Hm, sollte nicht der Programmierer, der diese Funktion einbauen möchte, selber mit OSVersion() abfragen, ob ein älteres Betriebssystem verwendet wird?
Sonst ergibt die Nichtverwendung dieser Funktion unter älteren Betriebssystemen keinen Sinn.

Re: Create Symbolic Link

Verfasst: 22.11.2015 00:26
von _JON_
Naja, Ich mein ja nur ein gutes Bsp. sollte doch nicht auf eine Funktion zugreifen die u. U. nicht verfügbar ist.