• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

kleines Problem mit Alias

milamber

Ribston Pepping
Registriert
07.12.05
Beiträge
295
hallo

ich wollte gerade ein kleines Script schreiben, dass mir erst einen Alias "umbiegt" und dann ein Programm öffnet. Einfach, dachte ich, Applescript Editor aufgemacht, fix eingetippt und ... geht nicht. Egal wie ich es anstelle, an irgendwas meckert er immer.

also noch einmal die Funktion des Scripts zusammengefasst:

Ich habe ein Verzeichnis in dem folgende drei Dateien liegen:

"Diablo II Patch (Carbon)" <- alias
"Diablo II Patch (Carbon) org"
"Diablo II Patch (Carbon) median"

jetzt möchte ich 2 Scripte:
"Diablo II" und "Diablo II - Median"

wenn ich das script "Diablo II" starte, soll es Folgendes tun:
Alias auf "... org" biegen und Diablo starten

beim anderen Script:
Alias auf "... median" Verweisen und Diablo starten

wie gesagt, ich dachte es wäre total einfach, aber ich bekomme immer irgendwelche Fehlermeldungen wegen meinen "set ... to ... as alias" oder wie auch immer (habe schon alle möglichen Syntax-Varianten durchprobiert.

Wäre nett wenn mir jemand helfen könnte, damit ich das endlich richtig lerne :). Ich kenne die Syntax von Applescript nicht und schaue halt jedes mal nach, wenn ich etwas brauche, nur diesmal ohne Erfolg. Habe schon google bemüht, aber es hat nicht geholfen :).
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
Hallo Milamber,

probier mal so:

Code:
property pathToFolder : "VolumeNamen:_Pfad:_zum:_Diablo:_Ordner:"

my switchAlias("Diablo II Patch (Carbon) org")
-- bzw.: my switchAlias("Diablo II Patch (Carbon) median")


on switchAlias(newItem)
	tell application "Finder"
		set original item of file (pathToFolder & "Diablo II Patch (Carbon)") to file (pathToFolder & newItem)
	end tell
end switchAlias
Grüße,

Daisy
 

milamber

Ribston Pepping
Registriert
07.12.05
Beiträge
295
hi, danke, aber es kommt die gleiche Fehlermeldung, die ich auch schon oft hatte:

Code:
„Finder“ hat einen Fehler erhalten: „original item of file 
"Macintosh HD:Applications:Diablo II english:Diablo II Patch (Carbon)"“
 kann nicht als „file "Macintosh HD:Applications:Diablo II english:Diablo II Patch (Carbon) - org"“ gesetzt werden.
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
Hi,

was dann das Problem sein könnte: ist "Diablo II Patch (Carbon)" ein gültiges Alias oder verweist es auf eine nicht mehr existente Datei?
Falls letzteres zutrifft - leider kann der Finder das 'original item' nur bei gültigen Aliasen setzen, sonst gibt's eine Fehlermeldung. Also erzeuge mal ein neues Alias mit diesem Namen und probier's nochmal ...

Grüße,

Daisy
 

milamber

Ribston Pepping
Registriert
07.12.05
Beiträge
295
es ist ein gültiges Alias und verweist auf eine von den 2 Dateien. Ich benutze das Alias schon, nur verweise ich im Moment noch manuell.
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
hmm - also ich habe mein Script nochmal mit 2 Files und einem Alias getestet, die ich mit deinen Dateinamen benannt habe. Das funktioniert bei mir einwandfrei. Vertipper bei den Dateinamen können wir ja wohl ausschließen? ... sind vielleicht die Originale nicht verfügbar, wenn du das Script startest? Ansonsten habe ich dann leider keine Idee, woran das bei dir scheitert ...
 

milamber

Ribston Pepping
Registriert
07.12.05
Beiträge
295
aah, ich nehme alles zurück. ich habe mich zwar nicht vertippt (darauf habe ich das Script 3 mal überprüft) aber dafür habe ich einfach ein falsches Verzeichnis angegeben und es nicht gemerkt. Das Verzeichnis heißt "Diablo II Folder" und ich habe dieses "Folder" vergessen und war mir irgendwie total sicher, dass es richtig ist :D.

vielen Dank, jetzt geht alles :) :top: