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


Anmeldedatum: 01.01.2001 Beiträge: 8
|
Verfasst am: 01.01.2001 - 18:09 Titel: Ordneraktionen - Es klappt einfach nicht |
|
|
Hallo,
ich hab ein kleines Script, dass ich einem Ordner anhängen möchte. Aber alles was ich bisher probiert habe klappt nicht.
Es soll so sein, dass sobald ein neues Objekt in diesen Ordner gelegt oder dortrhin abgespeichert wird, das Script startet und die Datei bearbeitet wird.
Dies ist eigentlich schon ein Kompromiss den ich eingehe, denn eigentlich sollte das Script direkt aus Filemaker heraus nach einem Export laufen, aber dort verweigert mir FM schon die Annahme des Scripttextes mit einer Fehlermeldung(Expected "," but found identifier, Fehler 2741).
Weiß irgendjemand Rat?
tell (a reference to AppleScript's text item delimiters)
set {oldDelims, contents} to {contents, {"\""}}
try
tell me to set theText to (read fileID)
set textList to text items of theText
set contents to {""}
set theText to (textList as text)
tell me to set eof fileID to 0
tell me to write theText to fileID
tell me to close access fileID
set contents to oldDelims
on error errMsg number errNbr
tell me to close access fileID
set contents to oldDelims
error errMsg number errNbr
end try
end tell _________________ Liebe Gr¸þe
Rolf |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 01.01.2001 - 18:20 Titel: Ordneraktionen |
|
|
Hallo KOBI,
am Ende der zweiten Zeile hast du den Fehler drin:
set {oldDelims, contents} to {contents, {"\""]
-- statt der eckigen Klammer ] gehören dort zwei } }
Dann gibt's auch keinen Fehler mehr.
Na ja, abgesehen davon, dass die Variable fileID nicht definiert ist. :(
Gruß _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 01.01.2001 - 21:29 Titel: Ordneraktionen |
|
|
Hallo Rolf,
ich habe jetzt mal das Skript geändert, so dass es läuft.
Es basiert auf dem Skriptteil, den dir Marc Myers bei macscripter.net gepostet hat.
on adding folder items to parent_folder after receiving fileList
repeat with theFile in fileList
set theInfo to info for theFile
if file type of theInfo is "TEXT" then
my processFile(theFile)
display dialog "Die Datei " & (name of theInfo) & " wurde bearbeitet"
else
display dialog "Die Datei konnte nicht verarbeitet werden"
end if
end repeat
end adding folder items to
on processFile(inputFile)
try
set fileID to (open for access file inputFile with write permission)
on error errMsg number errNbr
display dialog "File could not be opened" & return & return & (errNbr as text) & ¬
" " & errMsg buttons { "Cancel" } default button 1 with icon stop
end try
tell (a reference to AppleScript's text item delimiters)
set { oldDelims, contents } to { contents, ( "\"" ) }
try
tell me to set theText to (read fileID)
set textList to text items of theText
set contents to { "" }
set theText to (textList as text)
tell me to set eof fileID to 0
tell me to write theText to fileID
tell me to close access fileID
set contents to oldDelims
on error errMsg number errNbr
tell me to close access fileID
set contents to oldDelims
error errMsg number errNbr
end try
end tell
end processFile _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com
Zuletzt bearbeitet von Snow am 01.03.2003 - 16:55, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
KOBI •->


Anmeldedatum: 01.01.2001 Beiträge: 8
|
Verfasst am: 03.01.2001 - 01:11 Titel: Ordneraktionen |
|
|
Hey danke Snow,
das find ich toll. Hab's gleich mal ausprobiert - klappt nicht.
Aber ich glaub das hängt irgendwie am Betriebsystem, irgendetwas ist faul. Ich hab auch mal versucht die von apple mitgelieferten Ordneraktionen an einen Ordner zu hängen.(also Mauszeiger auf Ordner, ctrl und Orderaktion auswählen, mehr dürfte da doch nicht zu machen sein, oder) Aber null Erregung.
Ich hab das bisher alles nur auf meinem Powerbook ausprobiert. Morgen gehe ich mal an meinen Desktop. Der läuft eigentlich astrein. _________________ Liebe Gr¸þe
Rolf |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 03.01.2001 - 13:07 Titel: Ordneraktionen |
|
|
Hallo Kobi,
ohne das Script jetzt selber ausprobiert zu haben - wichtig bei den Ordneraktionen - sie funktionieren nur mit geöffneten Ordnern! Den Ordner kann man als geöffnete "Schublade" am unteren Rand des Desktops parken. Achja, Ordneraktionen wurden, glaube ich, mit System 8.5 eingeführt.
Gruß, Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
KOBI •->


Anmeldedatum: 01.01.2001 Beiträge: 8
|
Verfasst am: 03.01.2001 - 15:54 Titel: Ordneraktionen |
|
|
Tja, der Hinweis auf den geöffneten Ordner war gut. Da tut sich wenigsten was, nämlich eine Fehlermeldung: -1700 Can't make File (alias"Meine Platte:DT:Folder:Document) into a item.
Wieso kann er die Datei nicht als item verwenden? _________________ Liebe Gr¸þe
Rolf |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 03.01.2001 - 16:19 Titel: Ordneraktionen |
|
|
Hallo Rolf,
zuerst einmal:
AppleEvent Errors:
-1700 errAECoercionFail; Data could not be coerced to the requested descriptor type
aber - das obige Script von Snow gibt das meiner Meinung nach nicht her. Ich brauche einfach mehr Info, wenn Du magst, maile mir doch den gesamten Scripttext - ich schau dann mal nach.
Gruß, Folker
Geändert! Doch!!! its buggy, ich probiers gerade aus, melde mich gleich nochmal.
Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 03.01.2001 - 16:29 Titel: Ordneraktionen |
|
|
Hallo,
jo, nu' hab ichs -
im ersten Teil könnte man
my processFile(theFile) muß heißen: my processFile(theFile as string)
oder aber (viele Wege nach Ö) im zweiten Teil
set fileID to (open for access file inputFile with write permission) muß heißen:
set fileID to (open for access inputFile with write permission)
aber jeweils nur das eine oder andere, nicht beides ändern!
Gruß, Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 03.01.2001 - 17:12 Titel: Ordneraktionen |
|
|
Hallo Rolf,
und noch mal ich. Kleiner, wenn auch in Deinem Fall ein eher theoretischer Nachtrag - wenn sich in dem Text mehr als ca. 4000 von den zu konvertierenden Zeichen befinden, also bei Dir " (ASCII 34) steigt AppleScript mit einem Stack Overflow aus. IdR. wird das wohl kaum auftreten, aber man weiß ja nie.
Gruß Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
KOBI •->


Anmeldedatum: 01.01.2001 Beiträge: 8
|
Verfasst am: 03.01.2001 - 17:20 Titel: Ordneraktionen |
|
|
Hi Folker, habe den Zweiten Teil geändert - klappt super.
Thanks _________________ Liebe Gr¸þe
Rolf |
|
Nach oben |
|
 |
|