title: C++/MFC - Preventing a hanging child (ActiveX) control from freezing the whole UI?
body: <p>I'm currently playing around with Microsofts WebBrowser ActiveX control and I noticed that I can freeze my whole program by loading a web page that crashes the embedded IE.
  So I wondered if there's any way to prevent the whole programm from freezing?</p>
  
  <p>I already tried:
  - To Create a new CWinThread creating/handling the Control --> Same result
  - To Create a new Dialog from this Thread creating/handling the Control --> Same result</p>
  
  <p>The Problem seems to be deep in the message system, but I'm not sure.</p>
  
  <p>Can anyone tell me if it is is even possible to prevent the whole UI/Dialog from freezing and what causes this problem?</p>
  
  <p>(I already searched the web but I couldn't find any real solution)</p>
  
  <p>Thanx, Gary</p>
  
  <p>PS: The only way that currently works for me is to create a new child process loading/handling the control. I can modifiy it so that it looks like a child window of my main dialog but this takes the ability from me to access the control directly from my main dialog code.</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p><strong>Okay I found a solution that satisfies me. I'm creating a placeholder window in the main application and start a new child process containing the actual control. I delegate all window move/size/etc. messages to the child process so that it can reposition/react.
  It was important not to create the new process as a WS_CHILD object from my main application because that way it would still freeze it.
  I'm sharing information through a memory map with the process and comunicate using custom user messages.
  I Hoped it would be easier...</strong></p>