Ordner erstellen



  • Hallo mit _mkdir kann ich ja einen Normalen Ordner erstellen aber wie funktioniert das mit System Ordnern oder Unsichtbaren Ordner oder z.b. Ordner in den nur gelesen werde darf aber nicht geschrieben.



  • Das ist jeweils betriebsystemabhängig (Rechte, Sichtbarkeit etc.).
    Evtl. kannst du mal in boost::filesystem schauen, was die Lib so anbietet.



  • Th69 schrieb:

    Das ist jeweils betriebsystemabhängig (Rechte, Sichtbarkeit etc.).
    Evtl. kannst du mal in boost::filesystem schauen, was die Lib so anbietet.

    Geht dort auch nicht. Vermutlich, weil man sowas portabel einfach nicht hinkriegen kann.

    Stefan.



  • Am Betsen stellst du die Frage im jeweiligen OS-spezifischen Forum nochmal.



  • Aber wenn man etwas portabel hinbekommen möchte, dann muss man es doch so machen, dass man das Betriebssystem abfragt und dann die jeweilige Funktion aufruft, oder etwa nicht?

    if(WINDOWS)
    CreateDirectory()
    else if(LINUX)
    Whatever()
    ...

    Wie denn sonst?

    😕



  • Portabl0r schrieb:

    Aber wenn man etwas portabel hinbekommen möchte, dann muss man es doch so machen, dass man das Betriebssystem abfragt und dann die jeweilige Funktion aufruft, oder etwa nicht?

    if(WINDOWS)
    CreateDirectory()
    else if(LINUX)
    Whatever()
    ...

    Wie denn sonst?

    😕

    Naja - Ordner anlegen ist nicht das Problem. Aber es wurde ja auch noch nach anderen Dingen gefragt, und die sind durchaus komplizierter.

    Wie implementierst du z.B. hideFile() ? Oder writeProtectFile() ? Das ist unter Windows kein Problem, da werden einfach entsprechende Datei-Attribute gesetzt. Aber unter Linux (wenn ich mich recht entsinne) ist ein verstecktes File eines, dessen Namen mit einem Punkt beginnt. Also liefe hideFile() dort auf das Umbenennen der Datei hinaus. Noch schwieriger stelle ich mir writeProtectFile() vor - wenn man es auf portable Weise hinkriegen wollte. Und hier spreche ich ja erst einmal nur von zwei Betriebssystemen!

    Stefan.


Anmelden zum Antworten