Re: R23's Osaxen Rant (or much too much ado about nihil)
Re: R23's Osaxen Rant (or much too much ado about nihil)
- Subject: Re: R23's Osaxen Rant (or much too much ado about nihil)
- From: Bill Cheeseman <email@hidden>
- Date: Fri, 26 Jan 2001 04:55:19 -0500
on 1/26/01 1:13 AM, Paul Berkowitz at email@hidden wrote:
>
It's not me, Ed. I'd gladly wait a second or two. But the SCRIPT doesn't
>
wait: having issued its command to the Finder, it then goes on to the next
>
commands - the next lines of the script - which expect to find the file in
>
its new location. Presumably when all the commands are in a Finder tell
>
block, things work OK. But when these next commands go to some other
>
application (or none) and they attempt to act on file that they can't find,
>
the script errors, then times out a minute later. So nothing works at all.
In this case, it isn't the Finder's "fault," so to speak; you just didn't
write your script to make full use of the Finder's implementation of file
copying. All you have to do is write a handler that delays until the
Finder's copy operation is complete, using the "bzy " file type mechanism
that was introduced a few versions ago. Examples exist in Sal's help
modules.
The notion here is that a time-consuming process like a Finder copy can run
in a background thread so that your script can do other things in the
meantime. This can be useful. It's one of the powerful features of Finder
scripting. If the only thing you happen to want to do is the copy, then just
run your custom delay handler until the copy is done. Using the Delay
command in a repeat loop in your delay handler allows the rest of your
machine to function in the meantime.
-
Bill Cheeseman, Quechee, Vermont <
mailto:email@hidden>
The AppleScript Sourcebook
<
http://www.AppleScriptSourcebook.com/>
Vermont Recipes-A Cocoa Cookbook
<
http://www.stepwise.com/Articles/VermontRecipes/>