From what I understand, our developers cannot prevent this behavior if the deployment is run under the currently logged on user, i.e. the active desktop session. I'm sure you've done or thought of this, but perhaps you could mitigate the issue somewhat by including a warning message in your deployment package, so users will know that a deployment will be taking place and that they should not cancel it.