von Pfad + Dateiname nur Pfad nutzen

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von VaporiZed.

    von Pfad + Dateiname nur Pfad nutzen

    Ich hänge mal wieder an einem "kleinen" Problem...
    In meinem Programm greife ich viel auf ein Programm zu. Aus diesem Grund speichere ich den Pfad zusammen mit dem Dateinamen in meinen Settings. Der gespeicherte Setting sieht dann wie folgt aus : "C:\Programme\Das Programm\Programm Tool.exe"
    Es soll auch so gespeichert werden (Pfad + Datei). Das Programm kann auch in einem anderen Ordner liegen, daher suche ich das Programm per OpenFileDialog und speichere es dann in den Settings.

    Nun benötige ich jedoch nur den Pfad von dem Programm.
    Wie kann ich den kompletten Pfad auslesen aus dem schon gespeicherten Setting?
    Indem Du entweder den Text splittest. ( :thumbdown: ) oder besser: Mit dem Komplettpfad eine New FileInfo bildest. Aus diesem Objekt lässt sich nämlich das Verzeichnis per .DirectoryName (als String) oder per .Directory (als DirectoryInfo) rausziehen.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Der FolderBrowseDialog wär doch auch ne Idee oder?
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    wie @VaporiZed schrieb:

    VB.NET-Quellcode

    1. Dim fi = New IO.FileInfo("C:\Programme\Das Programm\Programm Tool.exe")
    2. ' bzw.
    3. Dim fi = New IO.FileInfo(My.Settings.DER_PFAD_HALT)
    Und dann siehst Du Dir mal die Properties von FileInfo an, da findest Du alles, was Du brauchst.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    :huh:
    Wie ich bereits schrieb: dafür kannst Du auch

    VB.NET-Quellcode

    1. Label_Pfad.Text = fi.DirectoryName
    schreiben, denn dafür ist es da, anstatt den Umweg über das DirectoryInfo-Objekt zu gehen. Aber nach Belieben. Es kommt ja zum Glück das Gleiche raus.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.