SelectDirectory in BCB 2010



  • gibt es unter BCB 2010 SelectDirectory noch?

    Laut 'Hilfe' ja, aber nach Copy & Paste des Beispiels

    const SELDIRHELP = 1000;
     String Dir = "C:\\Program Files\\CodeGear";
      if (SelectDirectory(Dir, TSelectDirOpts() << sdAllowCreate << sdPerformCreate << sdPrompt,SELDIRHELP))
    	pnlDirName->Caption = Dir;
    

    kommt nur eine Fehlermeldung:

    [BCC32 Fehler] UCFont.cpp(53): E2285 Keine Übereinstimmung für 'SelectDirectory(UnicodeString,TSelectDirOpts)' gefunden
    

    Beim BCB 2010 von Online Hilfe zu sprechen ist zwar vermessen( das schlimmste, was ich in dem Bereich bisher gesehen habe ), aber so schei*se kanns wohl nicht sein, oder?

    Hmm??? nach mehrmaligem komplett Compile des Projects und entfernen des <FileCtrl.hpp> funktionierts jetzt 😮
    Mal abgesehen von der EInOutError Exception

    Jetzt wollte ich einen Schritt weiter, und zwar:

    SelectDirectory( "SelDir", feDir, dirStr, TSelectDirOpts() << sdPrompt )
    

    Fehler siehe oben( mit Anpassung der Parameter 😉 )

    grüssle 🙂



  • SelectDirectory gibts mit Sicherheit im BCB 2010

    SelectDirectory verlangt minimum 3 Übergabeparameter und nach der Fehlermeldung
    zu urteilen übergibst du nur die ersten zwei Parameter.

    Hier die Hilfeseite
    http://docwiki.embarcadero.com/VCL/de/FileCtrl.SelectDirectory



  • Deklaration:

    extern PACKAGE bool __fastcall SelectDirectory(const System::UnicodeString Caption, const System::WideString Root, System::UnicodeString &Directory, TSelectDirExtOpts Options = (TSelectDirExtOpts() << sdNewUI ), Controls::TWinControl* Parent = (Controls::TWinControl*)(0x0))/* overload */;
    

    Fehler:

    [BCC32 Fehler] UCFont.cpp(54): E2285 Keine Übereinstimmung für 'SelectDirectory(UnicodeString,WideString,UnicodeString,TSelectDirExtOpt)' gefunden
    

    😕



  • Du übergibst Directory auch als Referenz?



  • Killer-Kobold schrieb:

    Du übergibst Directory auch als Referenz?

    hat alles gepasst. Hatte nur bei TSelectDirExtOpts das s am Ende vergessen. 😞

    Andere Frage: Bei früheren Versionen konnt man über den Parameter 'Root' ein Ausgangsverzeichnis angeben. Von diesem aus konnte man sich dann durchhangeln.
    Wenn ich jetzt eine Vorbelegung mache, z. B. "C:\\MeinDir\\UnterDir\" dann zeigt er es auch korrekt an, lässt aber kein Verzeichniswechseln mehr zu. 😮 😕

    Mit den Opts habe ich schon getestet, ohne Erfolg.

    grüssle 🙂


Anmelden zum Antworten