419 Benutzer sind Online

Ressource wird nicht gefunden

  1. #1
    detto
    MU Mitglied
    Avatar von detto
    Mitglied seit
    08.2007
    Ort
    Oldenburg
    Beiträge
    3.158

    Ressource wird nicht gefunden



    Ich hab mir ein kleines Applescript gebastelt und als Programmbundle gespeichert. Im AS selber steht nur:
    Code:
    tell application "Terminal"
    	set dasSkript to (path to resource "Script.sh")
    	do script dasSkript
    end tell
    Die angegebenen Datei Script.sh befindet sich innerhalb des Programmbundles, genaue Pfadangabe also: Contents/Resources/Script.sh.
    Nun wird mir beim Starten des erstellen Apps aber gesagt "Resource nicht gefunden".



  2. #2
    Chief_Wiggum
    Neues MU Mitglied
    Avatar von Chief_Wiggum
    Mitglied seit
    01.2007
    Beiträge
    99
    Hallo detto,

    hab mir deinen Code mal vorgeknöpft...

    1.
    die "path to resource" Anweisung muss ausserhalb des tell-Block stehen, da "Terminal" den Befehl nicht kennt

    2.
    es muss wohl "do shell script" heißen und nicht "do script"

    3.
    Der Pfad, den du von "path to resource" erhälst ist ein Applescript Pfad mit Doppelpunkten. Du brauchst für "do shell script" aber den Linux-tauglichen POSIX Pfad

    4.
    Und jetzt das Wichtigste: Kann es sein, dass du, wie ich 'Tiger' benutzt?

    Denn in dieser Version hat der Skript-Editor so seine Schwierigkeiten mit der 'path to' Anweisung. Wenn du das Skript im Editor ausführen willst, sucht er dann immer in seinem eigenen Unterodner.
    Bei 'path to resource' wird also im Resource-Ordner des Skripteditor-Bundle gesucht. Und da is die Datei ja nunmal nicht!!!
    Du musst, um das zu umgehen, dein Bundle als Application Bundle speichern und dann mit Doppleklick starten oder eine absolute Pfadangabe machen. Dann ist die Referenz richtig.

    Ganau nachlesen kannst du das hier:

    http://www.ratschlag24.com/index.php...ndle-zugreift/

    (scrolle runter bis zum Kapitel "Lösung für Tiger-Anwender")

    Also Code ändern:
    Code:
    set p to path to resource "Script.sh"
    set dasSkript to quoted form of POSIX path of p
    tell application "Terminal"
    do shell script dasSkript
    end tell
    Als Application Bundle speichern und mit Doppelklick ausführen. Dann sollte es funktionieren

    Viel Erfolg,
    Clancy Wiggum


Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Anmelden

Anmelden