处理了UINT CALLBACK OFNHookProc(
  HWND hdlg,      // handle to child dialog window
  UINT uiMsg,     // message identifier
  WPARAM wParam,  // message parameter
  LPARAM lParam   // message parameter
)函数;UINT CALLBACK OFNHookProc(
  HWND hdlg,      // handle to child dialog window
  UINT uiMsg,     // message identifier
  WPARAM wParam,  // message parameter
  LPARAM lParam   // message parameter
)
{
if ( uiMsg == WM_SHOWWINDOW || uiMsg == WM_INITDIALOG)

{
CWnd *pWnd = CWnd::FromHandle(hdlg);
pWnd->CenterWindow();
}
return 0;
}   这样子搞都没办法让他居中显示。   是这样子调用的: TCHAR szFilename[MAX_PATH] = TEXT("");
BOOL bResult = FALSE;
OPENFILENAME ofn = {0}; ofn.lStructSize = sizeof (OPENFILENAME);
ofn.lpstrFilter = TEXT("Support Files(*.txt)\0*.txt\0\0");
ofn.lpstrFile = szFilename;
ofn.nMaxFile = MAX_PATH;
ofn.Flags = OFN_EXPLORER |
OFN_ENABLEHOOK |
OFN_HIDEREADONLY |
OFN_NOCHANGEDIR |
OFN_PATHMUSTEXIST|
OFN_OVERWRITEPROMPT;
ofn.lpfnHook = OFNHookProc; bResult = ::GetSaveFileName (&ofn);