The ShowWindowAsync function sets the show state of a window created by a different thread.
BOOL ShowWindowAsync(
| HWND hWnd, | // handle of window | 
| int nCmdShow | // show state of window | 
| ); | 
If the window was previously visible, the return value is nonzero.
If the window was previously hidden, the return value is zero.
This function posts a show-window event to the message queue of the given window. An application can use this function to avoid becoming hung while waiting for a hung application to finish processing a show-window event.