Automator 1 Programm 2 Aktionen

Dieses Thema im Forum "Scripting und Automatisierung" wurde erstellt von janpi3, 01.10.2005.

  1. janpi3

    janpi3 Thread Starter MacUser Mitglied

    Beiträge:
    8.005
    Zustimmungen:
    154
    MacUser seit:
    01.02.2005
    Hi
    ich möchte mit dem Automator ein Programm erstellen das 2 Sachen können muss:

    1. als Droplet
    wenn ich auf das Programm ein Bild ziehe möchte ich das es auf einen Server hochgeladen wird

    2. bei Doppelklick
    wenn ich doppelt auf das Programm klick möchte ich das er mit den Inhalt diese Server anzeigt.

    wie mach ich das mit einer Automator Aktion?
    wie die Schritte einzeln gehe weiß ich aber wie kann ich ihm sagen was er machen soll wenn ich etwas auf ih draufziehe und wenn ich ihn doppelt anklicke.

    Könnt ihr mir helfen?

    --
    jan
     
  2. janpi3

    janpi3 Thread Starter MacUser Mitglied

    Beiträge:
    8.005
    Zustimmungen:
    154
    MacUser seit:
    01.02.2005
    keiner eine Idee
     
  3. lengsel

    lengsel MacUser Mitglied

    Beiträge:
    4.627
    Zustimmungen:
    53
    MacUser seit:
    25.11.2003
    Ohne lange darüber nachgedacht zu haben behaupte ich mal dass das so nicht klappen wird, weil ein Droplet eigentlich nichts anderes ist als ein Doppelklick mit zusätzlichen Parametern. Ich kann mir also nicht vorstellen wie ein und dassselbe Programm zwei verschiedene Dinge ausführen kann, die (eigentlich) auf die selbe Art aufgerufen werden.
    Da muss wohl eine andere Lösung her.

    An Stelle eines Programms liesse sich das gewünschte aber mit einer Ordneraktion mit AS umsetzen. Als Droplet löst die Ordneraktion "on adding new items" weitere Schritte (z.B. FTP-Upload) aus. Einfach mit Doppleklick geöffnet, bekommt man den Inhalt des Ordnders zu sehen (der ja dem Ordner auf dem Server entspricht, da ja von hier die Dateien ge-uploadet werden).

    Grüße,
    Flo
     
  4. janpi3

    janpi3 Thread Starter MacUser Mitglied

    Beiträge:
    8.005
    Zustimmungen:
    154
    MacUser seit:
    01.02.2005
    das habe ich momentan auch so eingerichtet, ich dacht nur das dass etwas komfortabler geht da auch noch andere Zugriff auf diesen Serverordner haben und mir somit diese Dateien fehlen bei der Sichtung des Ordners
     
  5. lengsel

    lengsel MacUser Mitglied

    Beiträge:
    4.627
    Zustimmungen:
    53
    MacUser seit:
    25.11.2003
    Vielleicht das Script um Synchronisation erweitern?

    Hat halt den Nachteil dass, falls jemand von woanders auf dasselbe FTP-verzeichnis sehr viele Dateien hochgeladen hat, diese nun samt und sonders auch in "Deinen" Ordner runtergeladen werden. Wenn allerdings die Übersicht oberstes Gebot hat böte sich das an.

    Grüße,
    Flo
     
  6. Snow

    Snow MacUser Mitglied

    Beiträge:
    262
    Zustimmungen:
    2
    MacUser seit:
    24.03.2003
    Mit Automator habe ich noch nichts gemacht. Aber ein AppleScript, als Programm gespeichert, kann das.

    Man verwendet im Skript verschiedene Routinen:

    Damit das Programm etwas macht, wenn es per Doppelklick gestartet wird, gibt es den 'on run'-Handler.

    on run
    -- Anweisungen, die bei Doppelklick ausgeführt werden sollen
    end run

    Um das Programm als Droplet zu nutzen, wird der 'on open'-Handler benötigt:

    on open theFileList
    -- Anweisungen, die ausgeführt werden sollen, wenn Dateien/Ordner auf das Programm gezogen werden
    end open

    Der 'on open'-Handler benötigt immer eine Variable (im Beispiel "theFileList"), in der Referenzen zu allen, auf das Droplet gezogenen Objekten gespeichert werden. Anschließend kann man diese Liste innerhalb einer Schleife abarbeiten.

    Ohne dass man etwas besonderes machen müsste, landen die Referenzen zu den 'gedroppten' Dateien und/oder Ordnern in der Variablen, die nach 'on open' angegeben wird.

    Kleines Beispiel:

    on run
    display dialog "Das Skript wurde per Doppelklick gestartet."
    end run

    on open theFileList
    repeat with oneItem in theFileList
    set oneItem to oneItem as alias
    tell application "Finder"
    activate
    set FileName to name of oneItem
    display dialog FileName
    end tell
    end repeat
    end open
     
Die Seite wird geladen...