ifstream - Verknüpfung folgen?



  • Hallo,
    (wie) kann man mit einem std::ifstream einer Verknüpfung folgen, d.h. als Datei wird die Verknüpfung angegeben und der ifstream liest in der Datei, auf die die Verknüpfung verweist?

    mfg
    mr x


  • Administrator

    Mr X schrieb:

    (wie) kann man mit einem std::ifstream einer Verknüpfung folgen, d.h. als Datei wird die Verknüpfung angegeben und der ifstream liest in der Datei, auf die die Verknüpfung verweist?

    Ich habe so meine Zweifel dass dies funktioniert, weil ...
    1. ... eine Verknüpfung *.lnk als Endung aufweist, zumindest unter Windows. Wenn man also meinfile.txt angeben würde, weil die Verknüpfung so heisst, dann findest es wohl das File nicht, weil es eigentlich meinfile.txt.lnk heisst.
    2. ... eine Verknüpfung unter Windows ist ein eigenes File mit Daten darin. Also ziemlich wahrscheinlich wird es einfach die Verknüpfung öffnen und nicht das File, auf welches verknüpft wird. Es wäre nämlich Aufgabe der Shell, dich weiterzuleiten. Nur geht std::ifstream wahrscheinlich nicht über diesen Umweg.

    Da allerdings im Standard dazu, soweit mir bekannt ist, nichts steht, ist dies völlig abhängig der jeweiligen Implementation der Standardbibliothek.

    Hast du schon mal geschaut, ob Boost.Filesystem dazu irgendwelche Hilfestellungen gibt?

    Grüssli



  • Danke für die Antwort. Ich wollte ledliglich wissen, ob man normale Verknüpfungen nehmen kann, oder ob ich mir besser eine Datei nehme, in die ich den Namen der zu öffnenden Datei schreibe. Da ersteres nicht ohne weiteres geht, nehme ich das Zweite.


Anmelden zum Antworten