Miesiąc: Listopad 2013

Jedyny i niezawodny sposób na otrzymanie bieżącego katalogu

Niedawno w projekcie pisałem małą apkę która wykonywała pewne działanie, które muszą być uruchamiane cyklicznie. W celu uzyskania dostępu do katalogu aplikacji użyłem zmiennej

 System.Environment.CurrentDirectory  .

Wszystko działało podczas debugowania. Jakies było moje zdziwienie, gdy okazało się, że zmienna ta wskazuje na katalog C:WindowsSystem32  podczas uruchamiania procesu przez Task Scheluder, zamiast katalogu aplikacji. Po długich lecz owocnych 🙂 poszukiwaniach udało mi się znaleźć rozwiązanie. Pewnym i niezawodnym sposobem na uzyskanie katalogu w którym znajduje się aplikacja jest :

 System.IO.Path.GetDirectoryName(System.Reflection.Assembly._ GetExecutingAssembly().Location) 

.