С http://msdn.microsoft.com/en-us/library/aa928175.aspx
Функция CreateDialogParam использует функцию CreateWindowEx для создания диалогового окна.Затем CreateDialogParam отправляет сообщение WM_INITDIALOG в процедуру диалогового окна.Функция отображает диалоговое окно, если шаблон определяет стиль WS_VISIBLE.Наконец, CreateDialogParam возвращает дескриптор окна диалогового окна.
Это говорит о том, что WM_INITDIALOG отправляется в диалоговое окно до его завершения.Однако это сообщение не обрабатывается до тех пор, пока оконный цикл сообщений в диалоговом окне не извлечет сообщение.Поскольку вы работаете с двумя отдельными потоками, вы не должны полагаться на это поведение.Если медленная операция выполняется синхронно в цикле сообщений окна, это может занять больше времени, чем остальная часть вызова CreateWindowEx.
РЕДАКТИРОВАТЬ: Согласно ответу Джоэла, документация подразумевает, что она отправляет (блокирует)сообщение, а не размещать его.Вы должны проверить это самостоятельно, прежде чем полагаться на какую-либо функциональность.