Unfortunately it can be caused by several factors. SaveToXXX methods are composed by sequences of Stream.Write calls. They can fail (raising exceptions) when a network share is not available, on disk problems (full, not enough rights...), etc... Have you surrounded SaveToXXX by an empty try..except?