I am writing a very simple script to transfer a file when a button is
clicked on a screen.  It works fine.  The procedure to send the file is
basically this (the SOURCE-FILE is an ftp url, the DESTINATION-FILE is a
local file name):

TRANSFER-FILE: does [
    write/binary DESTINATION-FILE read/binary SOURCE-FILE
    alert "File has been transferred"
]

Now I want to add an error check in case the file does not exist, the
directory structure is changed, or something like that, so the script
doesn't just stop.  I am trying to approach it a step at a time so I
know what I am doing.  I read the dictionary entries for try and disarm
and thought I could do the following as my first step toward thorough
error detection:

TRANSFER-FILE: does [
    FTP-RESULT: try [
        write/binary DESTINATION-FILE read/binary SOURCE-FILE
        ]
    alert "File has been transferred"
]

...and then, after the write-read operation, I would check if
FTP-RESULT was an error value, and if so, disarm it and check its
various parts.

But when I run the script as above (with the "try"), I get the error:
FTP-RESULT needs a value

Could someone explain, in simple terms, this try-disarm business, or
tell me the appropriate way to do what I am trying to do, which is to
catch an error in my file transfer process so the script doesn't just
crash?

Thank you.


Steven White
City of Bloomington
1800 W Old Shakopee Rd
Bloomington MN 55431-3096
USA
952-563-4882 (voice)
952-563-4672 (fax)
[EMAIL PROTECTED]
-- 
To unsubscribe from the list, just send an email to 
lists at rebol.com with unsubscribe as the subject.

Reply via email to