VB.NET Application Path

VB.NET Application Path
VB.NET Application Path

VB.NET Application Path

Du möchtest den VB.NET Application Path deiner Anwendung herausfinden, vielleicht weil Du eventuelle Dateioperationen durchführen möchtest?

Dann freue ich mich, dass Du auf meinen Beitrag gestoßen bist und hier lernen wirst, wie Du an diesen Pfad kommen kannst!

Vielleicht interessierst Du Dich im Zuge dieses Beitrages auch für folgende andere Beiträge: VB.NET Textdatei schreiben, VB.NET Textdatei einlesen, oder VB.NET PDF-Datei öffnen.

Der alte Weg

Der meiner Meinung nach veraltete Weg, Welcher auch nicht mehr verwendet werden sollte, ist der Folgende:

My.Application.Info.DirectoryPath

Wir finden dort im My.Application.Info„-Objekt verschiedene Informationen über die Applikation.

Das Problem des My-Namespaces sehe ich unter anderem darin, dass man in anderen .NET-Sprachen nicht ohne weitere Tricks darauf zugreifen kann (jedenfalls mir nicht anders bekannt).

Letztendlich geht ist hier allerdings nicht weiter um den global verpönten My-Namespace, daher überspringen wir weitere Argumente an dieser Stelle.

Eventuell werde ich mehr Informationen zum My-Namespace in einem separaten Beitrag sammeln.

Der einfachste Weg – VB.NET Application Path

An dieser Stelle möchte ich den einfachsten Weg ansprechen, bzw. beschreiben, denn wir immer, hat man’s meistens eilig 😉!

Der wohl einfachste Weg um den VB.NET Application Path auszulesen, bzw. ihn zu verwenden ist die Angabe eines relativen Pfades.

So spart man sich im Endeffekt komplett den Umgang mit dem absoluten Applikations-Pfad:

File.WriteAllText(".\Sample.txt", "Contents..")

Im Code hier drüber schreiben wir letztendlich eine Datei namens Sample.txt mit dem angegebenen Inhalt in das aktuelle Verzeichnis der Anwendung.

Windows Forms Weg

Ein Weg den man beispielsweise im „Windows Forms„-Kontext gehen könnte wäre:

Application.StartupPath

Wer es allerdings (warum zur Hölle auch immer) komplizierter mag:

System.IO.Path.GetDirectoryName(Application.ExecutablePath)

Es gibt auch noch die Variante über:

Environment.CurrentDirectory

„Leider“ kann das „CurrentDirectory“ auch gesetzt werden und liefert dann eventuell nicht mehr das gewünschte, bzw. erwartete Ergebnis, daher rate ich davon ab.

Der empfohlene Weg

Der Weg der für mich bisher am besten, also am zuverlässigsten und auch sogar mit .NET Core funktioniert hat war:

AppContext.BaseDirectory

Kompletter Code – VB.NET Application Path

Da der Code in diesem Beispiel sehr überschaubar ist, ist es denke ich nicht sinnvoll, Ihn hier noch einmal aufzulisten.

Gerne kannst Du Dir natürlich das Beispielprojekt herunterladen, um nicht selbst ein neues Projekt anzulegen etc.

Downloads

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert