C#获取程序运行路径的方法总结

4星 · 超过85%的资源 需积分: 15 11 下载量 65 浏览量 更新于2024-09-16 收藏 1KB TXT 举报
"这篇文章主要介绍了在C#编程中获取运行程序路径的各种方法,包括获取当前进程的完整路径、启动应用程序的可执行文件路径、当前工作目录、应用域的基础目录等。" 在C#编程中,有时我们需要获取与运行程序相关的各种路径信息,这可能涉及到程序的执行文件位置、当前工作目录、应用域的基础目录等多个方面。以下是一些常用的C#代码片段,用于获取这些路径: 1. `this.GetType().Assembly.Location`: 这行代码返回的是当前类型(`this.GetType()`)所在的程序集的完整路径。它适用于获取包含当前类的DLL或EXE文件的路径。 2. `System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName`: 使用`GetCurrentProcess()`方法获取当前进程,然后通过`MainModule.FileName`属性获取该进程的主模块(通常是可执行文件)的路径,但不包括文件名。 3. `System.Environment.CurrentDirectory`: 此属性返回当前应用程序的工作目录,也就是程序运行时的工作目录,可以用来读写文件等操作。 4. `System.AppDomain.CurrentDomain.BaseDirectory`: 这个返回的是当前应用域的基础目录,通常用于定位到应用程序的根目录。 5. `System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase`: 这个属性返回应用程序配置信息中的应用基目录,与`BaseDirectory`类似,但可能包含更多信息,如配置文件等。 6. `System.Windows.Forms.Application.StartupPath`: 如果在Windows Forms环境中,这个方法将返回启动应用程序时的目录,即启动执行文件所在的目录。 7. `System.Windows.Forms.Application.ExecutablePath`: 获取应用程序的可执行文件的完整路径,包括文件名。 8. `System.IO.Directory.GetCurrentDirectory()`: 类似于`Environment.CurrentDirectory`,获取当前工作目录,但不局限于Windows Forms环境。 9. `System.Threading.Thread.GetDomain().BaseDirectory`: 返回当前线程的应用域基础目录,这个路径可能因多线程环境而有所不同。 10. `System.Reflection.Assembly.GetExecutingAssembly().Location`: 这个方法返回执行当前代码的程序集的完整路径,与`this.GetType().Assembly.Location`类似,但不保证始终相同。 11. `System.IO.Path.GetFullPath(".\\")`: 获取当前目录的完整路径,以绝对路径形式表示。 这些方法在处理文件操作、资源定位或配置文件读取等场景中非常有用。理解并掌握这些路径获取方式,能够帮助开发者更准确地定位和访问程序所需资源。在实际开发过程中,根据需求选择合适的方法是至关重要的。
海-洋-水
  • 粉丝: 1
  • 资源: 7
上传资源 快速赚钱