I beginning to understand that SMS is just a case in point.

Without putting a whole lot of thought and research into this, let me toss out some brain farts:

RunLogonScriptSync will hold until the script completes. I think any 16bit programs invoked, whether by Shell or Run, will hold it up as well.

I wonder if the Start option to run in separate memory space may have some bearing. I think the WOWExec by default keeps them as one.
_________________________
Give a man a fish and he will be back for more. Slap him with a fish and he will go away forever.