// 获取程序的基目录。
System.AppDomain.CurrentDomain.BaseDirectory

// 获取模块的完整路径。
System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName

// 获取和设置当前目录(该进程从中启动的目录)的完全限定目录。
System.Environment.CurrentDirectory

// 获取应用程序的当前工作目录。
System.IO.Directory.GetCurrentDirectory()

// 获取和设置包括该应用程序的目录的名称。
System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase

// 获取启动了应用程序的可执行文件的路径。
System.Windows.Forms.Application.StartupPath

// 获取启动了应用程序的可执行文件的路径及文件名
System.Windows.Forms.Application.ExecutablePath

C# WinForm中AppDomain.CurrentDomain.BaseDirectory与Application.StartupPath的区别示例如下:

private void Frm_Server_Load(object sender, EventArgs e)
        {
            MessageBox.Show(AppDomain.CurrentDomain.BaseDirectory);
            MessageBox.Show(Application.StartupPath );
         }

说明:

1.   AppDomain.CurrentDomain.BaseDirectory 返回结果为: D:\mycode\

Application.StartupPath 返回结果为: D:\mycode

2.  Application.StartupPath 只能用于WinForm窗体中,而AppDomain.CurrentDomain.BaseDirectory既可以用于WinForm窗体中,也可以用于类库DLL文件中.

出处:http://blog.csdn.net/CYSONG168/archive/2010/07/26/5767533.aspx

注意下面:

string   str1   =Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名。     
string   str2=Environment.CurrentDirectory;//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。 
//备注   按照定义,如果该进程在本地或网络驱动器的根目录中启动,则此属性的值为驱动器名称后跟一个尾部反斜杠(如“C:\”)。如果该进程在子目录中启动,则此属性的值为不带尾部反斜杠的驱动器和子目录路径(如“C:\mySubDirectory”)。 
string   str3=Directory.GetCurrentDirectory();//获取应用程序的当前工作目录。 
string   str4=AppDomain.CurrentDomain.BaseDirectory;//获取基目录,它由程序集冲突解决程序用来探测程序集。 
string   str5=Application.StartupPath;//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string   str6=Application.ExecutablePath;//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。 
string   str7=AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//获取或设置包含该应用程序的目录的名称。

转载于:https://www.cnblogs.com/9988/articles/2464928.html

(装载)C#中AppDomain.CurrentDomain.BaseDirectory与Application.StartupPath的区别相关推荐

  1. System.IO.Directory.GetCurrentDirectory与System.Windows.Forms.Application.StartupPath的用法

    .Net Framework中System.IO.Directory.GetCurrentDirectory()方法用于获得应用程序当前工作目录.如果使用此方法获得应用程序所在的目录,应该注意:Sys ...

  2. WinForm 处理未处理的异常 Application.ThreadException + AppDomain.CurrentDomain.UnhandledException

    WinForm 处理未处理的异常 Application.ThreadException + AppDomain.CurrentDomain.UnhandledException 参考文章: (1)W ...

  3. 【Android 安全】DEX 加密 ( Application 替换 | 分析 ContentProvider 组件中调用 getApplication() 获取的 Application 二 )

    文章目录 一. ActivityThread 中的 installProvider 方法 ( 创建 ContentProvider 内容提供者 ) 二. installProvider 方法的第三分支 ...

  4. 【Android 安全】DEX 加密 ( Application 替换 | 分析 Service 组件中调用 getApplication() 获取的 Application 是否替换成功 )

    文章目录 一. Service 中的 getApplication() 方法分析 二. ActivityThread 中的 H 处理 CREATE_SERVICE 消息 三. ActivityThre ...

  5. 【Android 安全】DEX 加密 ( Application 替换 | ActivityThread 中的 mAllApplications 集合添加 Application )

    文章目录 一. 当前 Application 替换进度 二. ActivityThread 中的 mAllApplications 集合添加 Application 一. 当前 Application ...

  6. java 类隔离_Java类装载体系中的隔离性

    正文 Java中类的查找与装载出现的问题总是会时不时出现在Java程序员面前,这并 不是什么丢脸的事情,相信没有一个Java程序员没遇到过ClassNotException,因此不要为被人瞅见自己也犯 ...

  7. 在Windows2008 R2系统中无法看见Microsoft Excel Application的问题解决方案

    最近在服务器和本地调用delphi写的导出Excel 的webservices,出现一系列配置和权限问题,现在一一记录下来. 本地测试好了,然后移植到Windows2008R2 服务器配置,结果按照3 ...

  8. vue中axios改变header为application/x-www-form-urlencoded不起作用

    vue中axios改变header为application/x-www-form-urlencoded不起作用 axios默认的头是这个,一般get请求是这个头 config.headers['Con ...

  9. [ASP.NET]ASP.NET中的Inherits、CodeFile、CodeBehind的区别详解及OWIN及IDENTITY

    篇一 : ASP.NET中的Inherits.CodeFile.CodeBehind的区别详解 Inherits.CodeFile.CodeBehind 在 ASP.NET 中使用代码隐藏方法来设计W ...

最新文章

  1. boost::lower_bound相关的测试程序
  2. Andriod 测试 day1​andriod 工具介绍
  3. netty系列之:netty中的ByteBuf详解
  4. MVC学习笔记1 MVC概述
  5. Qt文档阅读笔记-qmake入门指南
  6. 考拉RPC(koalas-rpc v1.0)源码
  7. Python 基础总结 6 张图 带你学习Python
  8. Windows下安装RabbitMQ报错:unable to perform an operation on node时的解决方案
  9. Lottie 动画AE+Bodymovin导出的JSON文件解读
  10. 在html css中加粗显示,HTML和CSS实现字体加粗的方法有哪些
  11. 使用词向量嵌入模型,获得近义词
  12. n1怎么进入线刷模式_中国移动N1 M821线刷刷机教程_移动M821线刷包_救砖包
  13. Longhorn 云原生容器分布式存储 - Air Gap 安装
  14. Qt自带示例演示程序
  15. 操作系统13章(个人笔记)
  16. linux内核裁剪的具体过程和选择
  17. 超强技巧分享,如何将人民币大小写转换?
  18. 叽歪课堂 - Flutter 移动应用开发实战
  19. DFIG虚拟惯性控制+下垂控制的系统一次调频的simulink模型
  20. 关于计算机网络的计算题(三)

热门文章

  1. 程序员技术进阶手册(一)
  2. 李开复现身说法成功的十个启发
  3. GitHub的DGit改进了平台的可靠性、性能以及可用性
  4. 生成arff文件,csv转为arff
  5. 服务端架构中的“网关服务器”
  6. QT练习9 Dialog学习
  7. SpringBoot+Mybatis 框架之 @SelectProvider注解方式搭建
  8. vue.js:利用vue.js做一个抽奖小游戏
  9. Java基础 深拷贝浅拷贝
  10. 【NOIp 2015】【DFS】斗地主