1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

AppleScript-Application unter Snow Leopard

Dieses Thema im Forum "AppleScript" wurde erstellt von jack.jack, 12.09.09.

  1. jack.jack

    jack.jack Klarapfel

    Dabei seit:
    20.03.09
    Beiträge:
    280
    Hallo
    Ich habe auf Snow Leopard installiert. Dazu noch das mitglieferte Xcode 3.2. Jetzt wollte ich eine AppleScript-Applikation erstellen. Doch es geht nicht. In meinem Skript steht bis jetzt nur

    on opened theObject

    end opened


    Und noch irgendetwas, was unter Leopard noch nicht drinstand.
    Doch ich kann das Programm nicht kompilieren.
     
  2. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Du entwickelst Dich hier als mein Sorgenkind ;)

    Was funktioniert nicht? Was bekommst Du für eine Meldung?
    Bei mir funktioniert es. Deshalb vermute ich, dass es bei Dir auch funktionieren wird.
    Hast Du ASS Application als Propjekt ausgewählt?

    Viele Grüße
     
  3. jack.jack

    jack.jack Klarapfel

    Dabei seit:
    20.03.09
    Beiträge:
    280
    Ja. Coca-AppleScript.
    Fehlermeldung: Auf Zeile 21 (on clicked theObject): Expected “given”, “into”, “with”, “without” or other parameter name but found identifier. (-2741)
     
  4. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Das ist aber nicht ASS.

    Meine persönliche Meinung: Verschwende nicht Deine Zeit damit und nehme gleich Cocoa/Objective-C.

    Viele Grüße
     
  5. jack.jack

    jack.jack Klarapfel

    Dabei seit:
    20.03.09
    Beiträge:
    280
    Wie kann ich Cocoa lernen?
     
  6. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
  7. materia

    materia Roter Delicious

    Dabei seit:
    10.02.08
    Beiträge:
    93
    Schön, ich stehe gerade vor genau dem gleichen Problem und Deine Meinung bringt jetzt schon zwei Menschen nicht weiter... :/
     
  8. naich

    naich Pommerscher Krummstiel

    Dabei seit:
    22.11.08
    Beiträge:
    3.059

    Toll. Woher sollen wir bitte wissen, was du in Zeile 21 stehen hast?
    Es wäre wohl sinnvoll, wenn du deinen ganzen Code einfach hier mal postest (oder wirklich relevante Ausschnitte...)!

    Edit: Applescript und Objective C sind für mich immer noch 2 unterschiedliche Welten, und man kann nicht einfach pauschal sagen ObjC sei besser.
    Für manche Anwendungszwecke mag das sein, für manche aber auch nicht.

    Da ich nicht weiß, was überhaupt der TE machen will, kann man dazu nix weiter sagen...
     
  9. materia

    materia Roter Delicious

    Dabei seit:
    10.02.08
    Beiträge:
    93
    Ich arbeite gerade diesen Workshop durch und bekomme selbst, wenn ich

    Code:
    on opened theObject
        
    end opened
    leer lasse folgende Fehlermeldung:

    Code:
    OSACompile Wikibooks_DemoAppDelegate.applescript
    cd /Users/jm/Desktop/Wikibooks_Demo
    /usr/bin/osacompile -l AppleScript -d -o /Users/jm/Desktop/Wikibooks_Demo/build/Debug/Wikibooks_Demo.app/Contents/Resources/Wikibooks_DemoAppDelegate.scpt Wikibooks_DemoAppDelegate.applescript
    
    2009-09-15 13:46:18.570 osacompile[2207:607] Error loading /Library/ScriptingAdditions/LCC Scroll Enhancer Loader.osax/Contents/MacOS/LCC Scroll Enhancer Loader:  dlopen(/Library/ScriptingAdditions/LCC Scroll Enhancer Loader.osax/Contents/MacOS/LCC Scroll Enhancer Loader, 262): no suitable image found.  Did find:
        /Library/ScriptingAdditions/LCC Scroll Enhancer Loader.osax/Contents/MacOS/LCC Scroll Enhancer Loader: no matching architecture in universal wrapper
    osacompile: OpenScripting.framework - scripting addition "/Library/ScriptingAdditions/LCC Scroll Enhancer Loader.osax" declares no loadable handlers.
    Wikibooks_DemoAppDelegate.applescript:22: error: Expected “given”, “into”, “with”, “without” or other parameter name but found identifier. (-2741)
    Command /usr/bin/osacompile failed with exit code 1
    Fehlt sicher irgendwo nen Haken, nur wo?

    Soweit ich das Beurteilen kann hat jack.jack das gleiche Problem.
     
  10. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Hallo,

    Du hast scheinbar nicht gelesen um was es hier geht. ;)

    Nämlich um das:

    Auch wenn es falsch geschrieben ist...

    Hierbei kannst Du z.B. NSWindow in Deiner ASS-Applikation verwenden usw.
    Zumal das Wissen in Ccocoa/Objective-C voraussetzt.
    ... und wer das kann, der würde doch nicht eine weniger performantere und unflexiblere Applikation in ASS schreiben.

    Somit liegst Du damit "falsch":

    Viele Grüße
     
  11. materia

    materia Roter Delicious

    Dabei seit:
    10.02.08
    Beiträge:
    93
    Ich hab mal ein neues Cocoa-AppleScript Projekt erstellt, dort im interface einen Button mit folgendem click-Event erstellt:

    Code:
    on clicked theObject
        display dialog "yay"
    end clicked
    
    Dabei kommt der gleiche Fehler.

    Ich gehe mal davon aus, dass AppleScript in Xcode3.2 anders eingebunden werden müssen oder sich einiges mehr geändert hat. Weiß irgendwer wodurch dieses Problem beim Kompilieren auftritt?
     
  12. Poljpocket

    Poljpocket Salvatico di Campascio

    Dabei seit:
    07.01.07
    Beiträge:
    432
    Seit wann wird AppleScript denn kompiliert?? o.0

    Wenn du ausdrücklich eine "AppleScript Application" erstellst, sollte es funktionieren. Es hat immer funktioniert und sollte immer funktionieren. Wenn nicht, musst du dich wohl bei Apple beschweren oder uns mal das gesamte Projekt (verzippter Ordner) hochladen.

    Gruss ppocket
     
  13. materia

    materia Roter Delicious

    Dabei seit:
    10.02.08
    Beiträge:
    93
    Nun, es wird ja eine Ausführbare .app erstellt, und die muss kompiliert werden.

    - Untitled.zip

    Gruss materia
     
  14. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Bubben, Bubben, Bubben...

    Habt ihr einmal in der Doku gelesen? Nein!

    http://developer.apple.com/mac/libr...ef/doc/uid/TP40008853-CH1-DontLinkElementID_2

    Bei mir funktioniert das tadellos.

    Du kannst nicht einfach einsetzen:

    Code:
    on clicked theObject
        display dialog "yay"
    end clicked
    Sondern so etwas:

    Code:
    on clickAction_(myObject)
        display dialog "yay"
    end clickAction_
    Dann mußt Du vom Button aus mit gedrückter Strg-Taste das Otulet verbinden.
    In Deinem Beispiel zum App-Delegate.

    Ich betone nochmals:
    Das ganze ist wie in Cocoa/Objective-C.
    Da sollte man mehrmals überliegen, ob man nicht gleich das richtige lernt ;)

    Zumal in Cocoa/Objective-C die ScriptingBridge genutzt werden kann.
    Also genau andersrum als ASObjC.

    Viele Grüße
     
    #14 LittlePixel, 15.09.09
    Zuletzt bearbeitet: 15.09.09
  15. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Anbei noch ein Beispiel mit einer zweiten AS-Class.

    Viele Grüße
     

    Anhänge:

  16. LittlePixel

    LittlePixel Strauwalds neue Goldparmäne

    Dabei seit:
    09.07.08
    Beiträge:
    641
    Was mir gerade aufgefallen ist:

    Die Skripte liegen im Klartext im fertigen Ressources-Ordner.
    Oh mein Gott... vielleicht Einstellsache. Aber kein Plan.
     
  17. naich

    naich Pommerscher Krummstiel

    Dabei seit:
    22.11.08
    Beiträge:
    3.059
    Ok, sorry, das hatte ich wirklich nicht mitbekommen. Dann stimmt es natürlich, das ObjC da besser geeignet ist...
     
  18. Poljpocket

    Poljpocket Salvatico di Campascio

    Dabei seit:
    07.01.07
    Beiträge:
    432
    @materia: Ich hoffe, du weisst nur nicht, was ein *.app wirklich ist. Das ist ein sog. Bundle. Also ein Ordner mir allen zur Ausführung des Programms benötigten Ressourcen, der vom Finder als eine Datei angezeigt wird. Im Terminal ist ein *.app-Bundle aber nichts weiter als ein Ordner. Was der Finder beim Doppelklick drauf macht, ist nur die im Bundle unter /Contens/MacOS/ enthaltene ausführbare UNIX-Datei zu öffnen. Bei ASS-Applications wird nur dieser Teil kompiliert, der dann die Scripts und die nibs irgendwie zum Laufen bringt. Die Scripts kannst du aber im Klartext - wie LittlePixel sagt - im Bundle wieder finden. Wird also nichts kompiliert :D.

    Der Vorteil von Bundles ist - wie gesagt -, dass der Benutzer die Zusammenfassung von mehreren Dateien, welche für ein Programm benötigt werden, in einer Datei auffindet, die jedoch vom Finder nur als solche dargestellt wird.

    Viele OS X Ressourcen sind Bundles, darunter *.app, *.framework, *.bundle, *.plugin, *.component, ...
    Den Inhalt dieser Bundles kannst du jederzeit im Kontextmenu unter "Paketinhalt zeigen" auch im Finder anzeigen lassen.

    Viel Spass! Gruss ppocket
     
  19. jannk

    jannk Niederhelfenschwiler Beeriapfel

    Dabei seit:
    17.06.07
    Beiträge:
    838
    Ich glaube, hier sprechen einige von AppleScript, andere von AppleScript Studio unter Xcode. Und das muss kompiliert werden, denn es enthält .nibs.
     
  20. karolherbst

    karolherbst Danziger Kant

    Dabei seit:
    11.05.07
    Beiträge:
    3.878
    @Poljpocket: mhh warum habe ihr hier compilierte AppleScripts in denen ich nicht mal, wenn ich die einzelnen HexWerte der Datei ansehe, mein geschriebenes Skript? komisch komisch
     

Diese Seite empfehlen