CFileDialog zeigt Lange Ordnernamen nicht an



  • Hallo,

    ich habe ein Problem mit einer sehr alten, komplexen Software, das man mit 2 Zeilen Code nachstellen kann:

    CFileDialog fileDialog(TRUE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,NULL, NULL, 0, FALSE);
    fileDialog.DoModal();

    Der Dialog öffnet sich normal, aber wenn man einen Ordner mit einer Länge von mehr als 67 Zeichen auswählt, wird er oben in der Combobox nicht angezeigt, das Feld ist dann leer. Ordner mit einer Länge von bis zu 67 Zeichen werden angezeigt.

    bVistaStyle==TRUE kann ich nicht verwenden, da müsste ich mit einem Riesenaufwand alles umschreiben, weil SetTemplate exzessiv verwendet wird.

    Hat jemand eine Idee, wieso das Problem gerade ab >67 Zeichen auftritt und wie man es lösen könnte?

    Danke und viele Grüße
    Christian


  • Mod

    Da hast Du wohl einen alten Bug in den Common File Dialogs gefunden. Das ist kein MFC Problem, wie ich das sehe.
    Sondern ein Windows Problem.

    Nicht tröstlich, aber ich sehe da kaum Chancen das zu umgehen. Außer -> Nimm den neuen Stil (m_bVistaStyle!=false) und baue Deine Templates um.

    Mach einen Support-Case bei Microsoft auf. Ich vermute aber, dass das wenig Erfolg hat.


Anmelden zum Antworten