What's wrong with an auto updater that checks on launch for new updates and uses an incremental diff system? That saves a lot of bandwidth and is the preferred choice. It's not like you will be updating your server patches twice per day on average, won't you??? (that would be a terrible QA dept issue)
If the update is critical (i.e. protocol change, extremely hot security vulnerability fix, etc) you can have the protocol so that the server kicks the client and let the client know it was because the auto updater needs to be launch.
Although if you're disconnecting your users too often, they're gonna be pissed.