To elaborate on this, it worked under DJGPP because it was compiled as a DOS program. Dev-C++ compiles it as a windows console program. You can delete the DOS program as it "runs", because it is being loaded and interpreted by the DOS emulator, so the executing program (the DOS emulator itself) is not deleted.
Originally posted by Codeplug
What's the difference between "get completely out of the program" and "logged out and back in to the program"?
You were probably able to update the exe because the Windows VDM was running it and not the OS.
VDM = Virtual Dos Machine - yep.
Set it up so that users will start the application via a proxy application or batch file. The proxy app will look for "mrs.exe.new", copy it to "mrs.exe", then start "mrs.exe".