WPF开发随笔收录-获取软件当前目录的坑

  • WPF开发随笔收录-获取软件当前目录的坑已关闭评论
  • 158 次浏览
  • A+
所属分类:.NET技术
摘要

软件开发过程中,经常需要使用到获取exe当前目录这个功能,前同事在实现这个需求时使用的是Directory.GetCurrentDirectory()这个方法,但再最近的测试中,突然发现文件没有正常生成在exe所在的目录,找了很久突然发现生成在了自启动exe程序的bat文件所在的目录,因为软件是通过后台软件调用bat文件的形式来自启动。上网查了才发现,这种方式获取的目录是应用程序的当前工作目录,当前目录不同于原始目录,这是从中启动进程的目录。而我自己在获取当前exe目录用的是AppDomain.CurrentDomain.BaseDirectory,这个方式获取的目录就是exe所在的目录;


一、唠唠叨叨

软件开发过程中,经常需要使用到获取exe当前目录这个功能,前同事在实现这个需求时使用的是Directory.GetCurrentDirectory()这个方法,但再最近的测试中,突然发现文件没有正常生成在exe所在的目录,找了很久突然发现生成在了自启动exe程序的bat文件所在的目录,因为软件是通过后台软件调用bat文件的形式来自启动。上网查了才发现,这种方式获取的目录是应用程序的当前工作目录,当前目录不同于原始目录,这是从中启动进程的目录。而我自己在获取当前exe目录用的是AppDomain.CurrentDomain.BaseDirectory,这个方式获取的目录就是exe所在的目录;