In a way, that's worse! You'll have someone "open" a file, maybe make some edits to it, save it -- and it won't indicate a problem with that because it's considered as a file on disk somewhere -- and then when they go to send it, they can't find it and it may have been overwritten / deleted.
If the file is opened read-only, then programs should fall back to save as. Unfourtuantly, the only standard way to signal read-only is with file permisions. This will work, but many programs would likely have report a permisions error prior to the save as. Also it will cause problems for programs that transparently modify the file on disk while viewing.
I suppose you could hard code the read only parameter into the command that is used to execute the external program. Or have the external programs check if they are in a tmp-directory.