Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Einen AppleScript aus AppleScript erstellen

 
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Fischer-Bayern.de Foren-Übersicht -> AppleScript-Forum
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Jan
•->
•->


Anmeldedatum: 25.05.2004
Beiträge: 7

BeitragVerfasst am: 25.05.2004 - 10:05    Titel: Einen AppleScript aus AppleScript erstellen Antworten mit Zitat

Hallo! Ich bin absolut neu in AppleScript, und habe bis jetzt aber schon dazugelernt, z.B. das AppleScript nicht einfach nur Text ist, der auf einem Apple ausgeführt werden kann. ich komme aus dem Webbereich und bin mit ASP, PHP und MySQL groß geworden. Alles reine Textsprachen, die dann auf dem Server verarbeitet werden.

Aber nun mal zum Poblem:
Ich habe eine FilemakerPro Datenbank laufen, in der mir eine Script dynamisch einen AppleScript erzeugen soll. Die ansteuerung aus Filemaker ist kein Problem, nur mit dem AppleScript haperts noch ein bisschen.

Im Apple-AppleScript Forum habe ich erfahren,das man irgendwas mit osacompile .. do shell script oder sowas machen muß damit aus meiner Text-Anweisung eine richtige Application wird.

Starten tut sie schon von selbst, und der File_creator sowie File_Type scheinen auch richtig zu sein, aber die Anweisung im Script muckt nicht.

Hier mal der Script:

tell application "Script Editor"

set creator_code to "APPL"
set creator_type to "aplt"
set the_string to "display dialog \"Hello\""
set target_file to ("Macintosh HD:Users:hd:Desktop:testscript.app")

open for access file target_file with write permission
write the_string to file target_file starting at eof
close access file target_file

tell application "Finder" to set file type of (target_file as alias) to creator_code
tell application "Finder" to set creator type of (target_file as alias) to creator_type

tell application "Script Editor" to do shell script "osacompile -d -o target_file -e " & quoted form of the_string


end tell

Hat da jmd ne Idee Neutral

Danke

JAN
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Snow
Administrator
Administrator


Anmeldedatum: 21.11.2000
Beiträge: 1946
Wohnort: Deiningen

BeitragVerfasst am: 25.05.2004 - 19:11    Titel: Antworten mit Zitat

Hallo Jan,

es hat sich nicht vertragen, dass du den Skripttext zuerst mit 'write' und dann nochmal mit 'osacompile' in das Skript schreibst.

So funktioniert's:

tell application "Script Editor"
    set creator_code to "APPL"
    
set creator_type to "aplt"
    
set the_string to "activate" & return & "display dialog \"Hello\""
    
set target_file to (path to desktop as string) & "testscript.app"
    
    
do shell script "osacompile -e " & (quoted form of the_string) ¬
        & " -o " & (quoted form of POSIX path of target_file) ¬
        & "
-t " & (quoted form of creator_code) ¬
        & "
-c " & (quoted form of creator_type) ¬
        & "
-d"
end tell

--
Damit es auch gleich auf dem Desktop sichtbar wird:
tell application "Finder" to update target_file


Creator- und File-Type werden auch gleich per Shellskript zugewiesen.
_________________
Peter
-
Fischer-Bayern.de|Shadetreemicro.com
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
Jan
•->
•->


Anmeldedatum: 25.05.2004
Beiträge: 7

BeitragVerfasst am: 26.05.2004 - 13:07    Titel: VIELEN DANK!!!! Antworten mit Zitat

Hallo Snow,

vielen Dank für die schnelle Hilfe! Die dynamischen Informationsübergabe aus dem Filenmaker schaffe ich jetzt ohne Probleme!

Ich werd mich hier mal öfter umschauen ... vielen Dank!

Jan
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jan
•->
•->


Anmeldedatum: 25.05.2004
Beiträge: 7

BeitragVerfasst am: 26.05.2004 - 15:36    Titel: mmmhhhhh ... os9.1?? Antworten mit Zitat

zu früh gefreut ... hier auf meinem schönen G5 mit OSX 10.3.3 läufts einwandfrei, dagegen auf dem G3 mit OS 9.1 nicht so ganz, der versteht do shell script und quoted from nicht.

Question

Jan

P.S.: Hab AppleScript soeben mit Software-Aktualisierung aktualisiert[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Snow
Administrator
Administrator


Anmeldedatum: 21.11.2000
Beiträge: 1946
Wohnort: Deiningen

BeitragVerfasst am: 26.05.2004 - 21:12    Titel: Antworten mit Zitat

Hallo Jan,

folgender Code führt dazu, dass unter OS 9.1 das Skript zumindest als kompiliertes Skript gespeichert wird:

set the_string to "activate" & return & "display dialog \"Hello\""
set target_file to (path to desktop as string) & "testscript.app"

store script ¬
    (run script ¬
        "script testscript" & return & ¬
        
tab & the_string & return & ¬
        "
end script" & return ¬
        & "
return testscript") ¬
        
in file target_file -- with replacing

tell application "Finder" to update target_file


Unter OS X wird mit dem selben Code ein Skript-Applet (Programm) generiert. Das liegt daran, dass unter X die Dateiendung ".app" gleich richtig interpretiert wird. Lässt du die Dateiendung weg, wird auch unter X nur ein kompiliertes Skript erstellt.
_________________
Peter
-
Fischer-Bayern.de|Shadetreemicro.com
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
Jan
•->
•->


Anmeldedatum: 25.05.2004
Beiträge: 7

BeitragVerfasst am: 28.05.2004 - 09:56    Titel: Ich werds probieren ... Antworten mit Zitat

Mein Problem ist, das es hier ein paar Rechner gibt, die auf OS9.1 laufen (Bereich Verwaltung) und in der Grafik laufen G5 mit OSX 10.3.3.

Das heißt die Rechner in der Verwaltung werden den Script aus FileMaker raus erzeugen und die G5 mit OSX werden es ausführen um dem FileMaker informationen zu übergeben.

Ich werd´s gleich mal ausprobieren, Script auf nem 9.1 erstellen und moit .app versehen, dann müßte der OSx-Rechner doch gleich ne Application ausführen ... hoffentlich klappts!!!

Jan
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jan
•->
•->


Anmeldedatum: 25.05.2004
Beiträge: 7

BeitragVerfasst am: 28.05.2004 - 10:22    Titel: Antworten mit Zitat

Klappt leider nicht ... auf OS9.1 wird zwar eine Datei erstellt, die der ScriptEditor wieder öffnet, ausgeführt wird sie auf OS9.1 aber nicht automatisch. Das sit weiter micht schlimm, denn nur die OSX-Rechner müssen die .app-Datei ausführen können.

Also die auf 9.1 produzierte Datei auf einem G5 ausprobiert. Dieser sagt mir leider das die Datei nicht vollständig ist und daher nicht ausgeführt werden kann. Wenn ich Deinen Script aber unter OSX laufen lasse wird die erstellte Datei unter OSX auch ohne Meckern ausgeführt und der Dialog "Hello" erscheint.

Ich versteh es nicht ... ich hoffe ich nerve nicht ... hab halt wenig Ahnung von AppleScript.

Jan[/img]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Fischer-Bayern.de Foren-Übersicht -> AppleScript-Forum Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter