Prev: Transparent,resizable and movable child window
Next: How to approach Vertical Scrolling in a CTabCtrl
From: Guido Franzke on 11 Dec 2009 06:37 Hello NG, I already posted on 16. September that the CFileDialog does not show the "My Computer" drives, but shows files and dirs in e.g. "My files". Then you helped me to use CString for the filter string. But this was only temporarily. Now the files in a directory are not shown when there are a lot of files in it. Ordering the files and the CFileDialog shows the rest again. So there must be a too big number of files to be shown, so the CFileDialog not shows them at all. But the File-Open-Dialog is ok in standard Windows editor. But not with developer studio's CFileDialog. "My Computer" is not shown here. I cannot find an update or patch for the developer's CFileDialog. Reading in internet, people only say to reinstall Windows XP. But my customer don't want to reinstall. Problem seen on Win XP SP2, with Developer Studio VC 2003 (V7.1). What can I do? Thanks for help, Guido Here my code: CString hFilter = "All Files (*.*)|*.*||"; CFileDialog fdlg(TRUE, "", "",OFN_FILEMUSTEXIST| OFN_HIDEREADONLY, hFilter,this); if (fdlg.DoModal() == IDOK) { m_szFile = fdlg.GetPathName(); }
From: Ismo Salonen on 11 Dec 2009 10:16 Guido Franzke wrote: > Hello NG, > > I already posted on 16. September that the CFileDialog does not show the "My > Computer" drives, but shows files and dirs in e.g. "My files". > Then you helped me to use CString for the filter string. > > But this was only temporarily. Now the files in a directory are not shown > when there are a lot of files in it. Ordering the files and the CFileDialog > shows the rest again. So there must be a too big number of files to be > shown, so the CFileDialog not shows them at all. > > But the File-Open-Dialog is ok in standard Windows editor. But not with > developer studio's CFileDialog. "My Computer" is not shown here. > I cannot find an update or patch for the developer's CFileDialog. > > Reading in internet, people only say to reinstall Windows XP. But my > customer don't want to reinstall. > > Problem seen on Win XP SP2, with Developer Studio VC 2003 (V7.1). > > What can I do? > Thanks for help, > Guido > > > Here my code: > > CString hFilter = "All Files (*.*)|*.*||"; > CFileDialog fdlg(TRUE, "", "",OFN_FILEMUSTEXIST| OFN_HIDEREADONLY, > hFilter,this); > if (fdlg.DoModal() == IDOK) > { > m_szFile = fdlg.GetPathName(); > } > > > How many files ? the was ( is?) a limit for the buffer size in this version of MFC which can be worked around. Or if uoy are just browsing for folder then use ShBrowseForFolder() ismo
From: David Ching on 12 Dec 2009 00:01
"Guido Franzke" <guidof73(a)yahoo.de> wrote in message news:uCFv#ZleKHA.5808(a)TK2MSFTNGP06.phx.gbl... > Hello NG, > > I already posted on 16. September that the CFileDialog does not show the > "My > Computer" drives, but shows files and dirs in e.g. "My files". > Then you helped me to use CString for the filter string. > MFC CFileDialog uses an OpenFileName hook which (at least at one time) prevented all of the UI like the drive bar (I think it was) from being shown. Can you use GetOpenFileName() API instead of CFileDialog and see if it works better for you? > But this was only temporarily. Now the files in a directory are not shown > when there are a lot of files in it. Ordering the files and the > CFileDialog > shows the rest again. So there must be a too big number of files to be > shown, so the CFileDialog not shows them at all. > > But the File-Open-Dialog is ok in standard Windows editor. But not with > developer studio's CFileDialog. "My Computer" is not shown here. > I cannot find an update or patch for the developer's CFileDialog. > > Reading in internet, people only say to reinstall Windows XP. But my > customer don't want to reinstall. > > Problem seen on Win XP SP2, with Developer Studio VC 2003 (V7.1). > > What can I do? > Thanks for help, > Guido > > > Here my code: > > CString hFilter = "All Files (*.*)|*.*||"; > CFileDialog fdlg(TRUE, "", "",OFN_FILEMUSTEXIST| OFN_HIDEREADONLY, > hFilter,this); > if (fdlg.DoModal() == IDOK) > { > m_szFile = fdlg.GetPathName(); > } > How many of the files in the folder are read only? Your flag OFN_HIDEREADONLY hides those..... -- David |