According to MSDN, the lpClassName parameter of CreateWindowEx is optional.
lpClassName [in, optional]
However, the documentation makes no mention of what it means to pass NULL. What's more, if NULL is passed, then there is no way for the window manager to find a window procedure for the new window.
So, is the documentation wrong? Or is it correct and there is some scenario where NULL is a valid value for lpClassName?