End Google Ads 201810 - BS.net 01 --> Using MFC & VC6

I am terribly confused about how to move CWnd objects around. With screen coords, client coords, dialog units, screen units, AaaRGh.

I have dialog app with button controls. From the OnSelect function of the buttons I am calling another popup dialog of my own making. I want to position the popup dialog so it obscure certain areas of the main dialog.

I am trying to use CWnd::MoveWindow() to move my popup dialog in the OnInitDialog() function to a position relative to the top left postion of the main dialog.

Which methods should I be using to get the main dialogs position to calculate coords for the MoveWindow() function in the correct units. A small example would be useful. Has anyone made a small Class to handle all this confussing translation between all the possible units and coordinte references ?