C#实现获取程序路径方法小结
在开发C#程序时,有时候需要获取当前程序的路径,可以使用以下方法。
获取当前程序运行路径
以下是获取当前程序运行的路径的代码:
string path = AppDomain.CurrentDomain.BaseDirectory;
//或者使用以下逻辑
string path2 = System.IO.Directory.GetCurrentDirectory();
AppDomain.CurrentDomain.BaseDirectory
方法返回当前应用程序域的基目录,也就是程序集的目录,而System.IO.Directory.GetCurrentDirectory()
方法则返回当前工作目录。
两者的区别是:工作目录可能与应用程序集目录不同,尤其是当应用程序是作为一个启动器运行另一个应用程序时。
获取当前程序路径
以下是获取当前程序路径的代码:
string path = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
使用System.Diagnostics
命名空间下的Process.GetCurrentProcess()
方法获取当前正在运行的进程,然后使用MainModule.FileName
属性获取当前进程的文件名,即为当前程序路径。
需要注意的事项是,若是在Visual Studio环境下调试程序,则此方法可能会返回devenv.exe
,因为程序是在Visual Studio环境下运行的。
示例说明
假设当前程序名为Test.exe
,其目录为D:\Program Files\Test
,执行以下代码:
Console.WriteLine(AppDomain.CurrentDomain.BaseDirectory); //D:\Program Files\Test\
Console.WriteLine(System.IO.Directory.GetCurrentDirectory()); //D:\Program Files\Test
Console.WriteLine(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName); //D:\Program Files\Test\Test.exe
若是在Visual Studio环境下调试程序,只需将程序拷贝到其他目录或打包为发布版本进行测试即可。
结论
通过以上方法,可以方便地获取当前程序路径或者当前程序运行路径。在开发中,根据实际情况,可以选择合适的方法获取当前路径。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#实现获取程序路径方法小结 - Python技术站