>David,
>
>No, I use the main VFP screen as a desktop and it is maximized (1024 x 768)
>Note that i'm using the Common Dialog OCX and not the GETFILE() function.
>
Hi Walter,
The default behavior of the Common Dialogs uses the upper-left hand corner of the calling window to establish a reference point for its initial position. You can see this behavior in Notepad, Paintbrush, etc. Open one of these, position it, then use file open. Close and repeat, and you'll note that the position of the dialog is relatively the same (in relation to the application) as it was before, with the applicaiton in a different position. However, I think that VFP may be using the Windows desktop as the calling window. One thing that has been noted is that when _SCREEN.Visible = .F. (as you would when using a SDI application) neither GETFILE() nor PUTFILE() will display. These function both call the Common Dialogs DLL to achieve their results. It has been theorized here, that the reason for this is that the dialogs "inherit" some properties (such as visibility) of the calling window. Since the _SCREEN is the caller, and it isn't visible, niether are these dialogs. For the OCX to work under these circumstances, some other window would have to be specified as the caller. Further, this window would have to be always visible and always present. The only one that fits this criteria would be the desktop, hence, the behavior you're seeing.
Please keep in mind, however, that this is theory. FWIW, it does explain the various behaviors, and in the absence of contradicting evidence, I would say is correct. I am, however, open to any alternative explanation that may be offered.
George
Ubi caritas et amor, deus ibi est