Hey Folks,
The way I've worked this is:
- upload image
- extract image name
- copy image from uploads path to custom path
- create the various image sizes needed (eg HiRes - which is usually the one uploaded, LowRes, Thumb)
- this is done using Draw + FreeImage
- update the record fields (HiresPath, Lowres_Path, Thumb_Path)
Works pretty well. The system deals with a lot of images and this paradigm has been in place for a year now, hasn't skipped a beat.