title: Creating a Transparent Child window on top of non-transparent Parent Window (win32)
body: <p>I have a program which is not written by me. I dont have its source and the developer of that program is developing independently. He gives me the <code>HWND</code> and <code>HINSTANCE</code> handles of that program.</p>
  <p>I have created a child window ON his window, using <code>win32</code> api.</p>
  <p>First thing I need is to make this child window have transparency on some area and opaque on other area(like a Heads up display(HUD) for a game), so that the user may see things in both windows.</p>
  <p>The second thing that I need is to direct all the input to the parent window. My child window needs no input.</p>
  <p>I know that <code>WS_EX_TRANSPARENT</code> only makes the child draw at the end like in painters algorithm.</p>
  <p>I cant use <code>WS_EX_LAYERED</code> because its a child window.</p>
  <p>p.s.</p>
  <p>I have looked everywhere but didn't find any solution though there were similar questions around the internet.</p>
  <p>Actually this is a HUD like thing for that game. I can't draw directly on parent window because of the complexity with multi-threads any many other reasons.</p>
  <p>-- EDIT ---------------------------</p>
  <p>I am still working on it. I am trying different ways with what you all suggested. Is there a way to combine <code>directX</code> and <code>SetWindowRgn()</code> function or <code>directx</code> with <code>BitBlt()</code> function? I think that will do the trick. Currently I am testing all the stuff as a child window and a Layered window.</p>