It would appear that FileReference.upload() is the only way in which you can upload a file to the server in Flash and get feedback about its upload state via a PROGRESS callback. All other methods just go off into the ether and come back when the file upload is completed.
Unfortunately, FileReference appears to insist that a user select the file to be uploaded. There doesn't appear to be a mechanism by which to set the file through code. The reason I need this is that I'm allowing the user to upload massive files and am uploading them in chunks, so, I want to just pack a chunk of data into a FileReference (maybe 5 or 10 megs) and send that off and watch it go. Does anyone have any thoughts on whether it's possible to manually load data into a FileReference object? The data property is read-only, sadly. Any and all advice on this will be treated with kindness :)
The poster is not trying to upload random files from a users system, but rather trying to get file reference to upload custom data - which it unfortunately can't.
I found this link to be very helpful: http://labs.findsubstance.com/2008/04/03/as3-upload-encode-images/