DateiFilter-String ?



  • Hi,

    mein Problem: ich brauch ne DateiFilter-Zeichenkette für nen DateiDialog, muss diese aber dynamsich erweitern können, ich bekomms aber nicht auf die Reihe.

    wchar_t *Filter = L" Files (*.dat)\0*.dat\0\All Files\0*.*\0";
    

    Wie kann ich so ein Ding sozusagen per Variable erweitern ?

    WideString e = ".exe";
    WideString et= "Files (*.exe)";
    
    wchar_t *Filter = L"Files (*.dat)\0*.dat\0\All Files\0*.*\0";
    

    Ich bekomme es nicht gebacken, das Ding soll mal so aussehen:

    wchar_t *Filter = L"Files (*.exe)\0*.exe\0Files (*.dat)\0*.dat\0\All Files\0*.*\0";
    

    😞



  • So habs jetzt hinbekommen

    WideString FileExtensionW = ".exe";
    WideString Filter = (WideString) "Files (*" +FileExtensionW+ ")|*" +FileExtensionW+ "|\All Files|*.*|";
    WideString lpstrFilterW = StringReplace(Filter, '|', '\0', TReplaceFlags() << rfReplaceAll);
    
    OPENFILENAME ofn = {0};
    ofn.lpstrFilter = lpstrFilterW.c_bstr();
    

    😉


Anmelden zum Antworten