No, it should work right away or throw an error message if something went wrong. Hanging indicates a lock problem, i.e. some other session blocks the change.
If you have access to an enterprise manager console, you may be able to find out which session it is and either make it continue or kill it.
... which brings us back to the status of the mail queue (monitoring is also available in the internal administration, see somewhere above) and the question if you have any log information on your Exchange to determine if APEX actually reaches it or if you have a firewall (possibly on db host, Exchange host or some intermediate network component) that doesn't allow the SMTP traffic.
Just bounced onto your thread on apex forum and was pleasantly surprised to see references to the code I wrote. Feels like meeting the old mate. I know this is very old thread and you have already solved the issue but would be more than happy to help you if you run into any errors with the application. reach me at firstname.lastname@example.org