一客户反馈,软件(C#)手动打开时正常,而设置为开机启动后,播放视频的功能失效。

测试发现,是开机启动时,程序没有找到视频文件的路径。因为此时获取的当前路径是 C:\windows\system32。

C# 获取应用程序当前目录_程序设计

查资料,修改了写法,问题解决,总结如下:

如果软件是用户手动打开的,获取当前目录方法如下,获取的是一个exe文件所在的文件夹路径。

System.Environment.CurrentDirectory

如果软件需要开机启动,则获取当前目录的方法如下:

string adPath = System.Reflection.Assembly.GetEntryAssembly().Location;

 

C# 获取应用程序当前目录_编程开发_02

获取的是exe自身所在路径,为了获取它所在的文件夹路径,还需要再做一部处理,用Substring方法把exe的名称拿掉:

adPath = adPath.Substring(0, adPath.LastIndexOf("\\"));

 

第二种方法更全面。