Dateiauswahl



  • Hi Leute,

    weiß jemand zufällig wie ich in einem Dateiauswahldialog den zuletzt aufgerufenen Ordner/Verzeichnis beim erneuten starten gleich angezeigt bekomme????

    CString strpathname;
        TCHAR cFileNames[1024]; 
        memset(cFileNames,0,sizeof(cFileNames)); 
        CFileDialog fileDialog(TRUE,NULL,NULL,OFN_ALLOWMULTISELECT,("CPA-ErgebnisDatei (*.han)|*.han|")); 
    
        fileDialog.m_ofn.lpstrFile = (LPSTR)cFileNames; 
        fileDialog.m_ofn.nMaxFile  = sizeof(cFileNames);
    
        if (fileDialog.DoModal() == IDOK) 
        { 
            int size = 0;
            GetFiles(cFileNames); 
            size = m_str_arrList.GetSize();
            if ( size == 1 ) 
            {   
                strpathname = fileDialog.GetPathName();
                StartLoadData(m_str_arrList.GetAt(0),strpathname);
            }
            else
            {
                for(int i=1; i<m_str_arrList.GetSize(); i++) 
                {              
                    strpathname = fileDialog.GetPathName();
                    StartLoadData(m_str_arrList.GetAt(i),strpathname);
                }
            }
        }
    

    DANKE! :p

    MfG
    RunSeb



  • Ich weiss spontan nicht wie es geht und auch ein Blick in die MSDN sagt mir das es dafür keine fertige Funktion gibt (so ich sie nicht übersehen habe)...

    Im zweifel würd ich ne klasse von CFileDialog ableiten und dann da was basteln, das geht dann immer irgendwie...OnInitDialog müsstest du z.b. überladen können...

    das ableiten übernimmt in dem fall sogar der klassenassi für dich, musst nur eine neue klasse erstellen und anklicken von cfileDialog ableiten...



  • MMh sofern mich kein Pferd krault, hab ich auch nichts gefunden.

    Überlege ich mir morgen mal genauer.

    Danke aber trotzdem, das ist nämlich schon mal der Ansazt.
    Aber Steine Meiseln kann ich damit leider noch nicht.

    Mfg
    RunSeb



  • Hi,
    wenn ich das richtig Verstanden habe, dann versuchs mal damit...

    fileDlg.m_ofn.lpstrInitialDir = "C:\\";
    


  • Oh ja, herzlichen Dank!

    Hat mir sehr geholfen! 😉

    MfG
    RunSeb


Anmelden zum Antworten