Kaip konsolinėje programoje rasti programos kelią?
Windows Forms programoje galiu naudoti Application.StartupPath
, norėdamas rasti dabartinį kelią, tačiau konsolinėje programoje to padaryti neįmanoma.
System.Reflection.Assembly.GetExecutingAssembly()
.Location
1
Jei norite gauti tik katalogą, derinkite tai su System.IO.Path.GetDirectoryName
.
1Pagal p. Mindor's komentarą:
System.Reflection.Assembly.GetExecutingAssembly().Location
grąžina, kur šiuo metu yra vykdoma asamblėja, kuri gali būti arba nebūti ten, kur yra asamblėja, kai ji nevykdoma. Šešėlinio asamblėjų kopijavimo atveju gausite kelią į laikinąjį katalogą.System.Reflection.Assembly.GetExecutingAssembly().CodeBase
grąžins surinkimo 'nuolatinį' kelią.