title: Safety and stability of SetParent() and GetParent()
body: <p>I'm using the following functions in my program:</p>
  
  <pre><code>[DllImport("user32.dll", CharSet = CharSet.Auto)]
  static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
  
  [DllImport("user32.dll", CharSet = CharSet.Auto)]
  static extern IntPtr GetParent(IntPtr hWnd);
  </code></pre>
  
  <p>My question is: is this approach safe and stable? My development machine is Windows XP and so far I didn't find any problem with its use. I wonder if I can have issues in different versions (e.g. Windows Vista, Windows 7, whatever), different cpus (x64), etc. Can you guys provide some feedback on this and if there are some potencial issues how can I overcome them?</p>
  
  <p>Thanks in advance.</p>
  
  <p>Zubrowka</p>