Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jens Hoffmann •--->

Anmeldedatum: 07.05.2001 Beiträge: 175
|
Verfasst am: 25.03.2002 - 18:57 Titel: Apps per type ansprechen? |
|
|
Hallo Forum
Ist es möglich, Programme statt mit dem Namen mit dem type anzuprechen? Also z.B. "MACS" statt "Finder"? Wie sieht der tell-Block dann aus?
Ich möchte Scripts für verschiedene Programmversionen schreiben, z.B. für BBEdit 6.1 und 6.5 ... (= "R*ch")
Jens |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 26.03.2002 - 10:13 Titel: Apps per type ansprechen? |
|
|
Moin Jens,
könnte z.B. so gehen:
tell application "Finder" to set appVar to name of (path to application "TBB6")
tell application appVar to make new window
Problem wird das kompilieren spezieller Programm-Classes bzw. Commands. Da wirst Du um ein 'using terms' nicht herumkommen bzw. mittels 'run script "string"' eine Lösung suchen müssen. Ich habe diese Technik mal ausgetestet um auf unterschiedliche Programmnamen von FMP's im Netzbetrieb reagieren zu können. Wenn ich Zeit finde werde ich das ganze noch mal rekapitulieren.
Gruß,
Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
Jens Hoffmann •--->

Anmeldedatum: 07.05.2001 Beiträge: 175
|
Verfasst am: 08.05.2002 - 13:46 Titel: Apps per type ansprechen? |
|
|
Hi
Ich habe gerade ein Script, das für BBEdit 6.1 geschrieben war, aus BBEdit 6.5 aufgerufen. Im Script wurden automatisch die tell-Blöcke für 6.1 in tell app "BBEdit 6.5" ersetzt. Heisst das, AS erkennt automatisch die laufende Programmversion?
Dann ist mir noch eine andere Möglichkeit eingefallen (nur für Scripte, die direkt aus einem Programm heraus aufgerufen werden):
tell application "Finder"
set x to name of every process whose frontmost is true
end tell
Dann kann ich mit
tell app x
weitermachen. Was ist davon zu halten? Würde das so funktionieren?
Jens |
|
Nach oben |
|
 |
Mojo •-->

Anmeldedatum: 19.01.2002 Beiträge: 20
|
Verfasst am: 08.05.2002 - 13:52 Titel: Apps per type ansprechen? |
|
|
set processCounter to 1
tell application "Finder" to set howManyProcesses to (number of processes)
repeat howManyProcesses times
tell application "Finder"
set x to name of process processCounter
end tell
if x contains "Sherlock" then
display dialog "Found."
end if
set processCounter to processCounter + 1
end repeat
Aber irgendwie dauert das Suchen immer so ewig.
(Geändert von Mojo um 14:01 Uhr am 8 Mai 2002) |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 08.05.2002 - 15:12 Titel: Apps per type ansprechen? |
|
|
@Jens
Das mit dem Erkennen der jeweiligen Prog-Version aber auch nur wenn Du ein offenes Script in einem Editor hast! Speicher das Ding mal als Applet. Also wenn es sich nicht geändert hat (hat es?) bekommst Du den netten Dialog "Wo ist Programm xy".
Wenn es denn geändert wäre, ist das (Appletypisch?) mal wieder ein Eigentor! Ich als Entwickler (FMP) hab dann arge Probleme verschiedene Programmversionen auseinander zu halten. Versionen mit identischen Creator-Code werden nämlich einfach nur mit verschiedenen Namen versehen, also "Filemaker Pro V3", "Ö V4".
Das alles ändert aber nix am Hauptproblem! Wenn Du ein Script kompilieren willst um es zu sichern, auch als App, _muss_ AppleScript irgendwie im Verzeichnis nachschlagen können - für "display dialog" ist es wurscht, aber bei
tell app x
tell database "MeineDatenbank"
Ö ist es Essig.
So was funzt natürlich (unter X auch??:
tell application "FileMaker Pro" to activate
tell application (path to frontmost application as text)
display dialog "Test"
end tell
Das stimmt hier alles nur noch bis AS 1.6 - hmm, ich glaube so langsam wird bei mir ein TI-Book fällig ;)
Gruß,
Folker
Nachtrag:
Es gibt natürlich das
using terms from
Das kann hilfreich bei Benutzung von Variablen für Programmnamen sein. Schau Dir das mal in der AppleScript-Hilfe an. Nutzt aber auch nur bei verschiedenen Namen für Programme (bzw. im Netzbetrieb)
(Geändert von Folker um 15:18 Uhr am 8 Mai 2002) _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
Jens Hoffmann •--->

Anmeldedatum: 07.05.2001 Beiträge: 175
|
Verfasst am: 08.05.2002 - 17:20 Titel: Apps per type ansprechen? |
|
|
Ob als Applet oder als kompiliertes Script gespeichert: Je nachdem, welche BBEdit Version offen ist, ändert sich automatisch die tell-Anweisung. Das Script funktioniert auch dann in beiden Versionen einwandfrei, wenn's als nur ausführbares Applet gesichert worden ist!
Probleme mit den Verzeichnissen gab es hier nicht, weil das Script für die beiden Versionen gleich ist.
Ich glaube, ich werde doch lieber für jede Version programmieren...
Danke und Grüße Jens |
|
Nach oben |
|
 |
|