当前位置: 代码迷 >> C# >> 关于c#程序开机自启后不能读取读取指定配置文件的有关问题
  详细解决方案

关于c#程序开机自启后不能读取读取指定配置文件的有关问题

热度:21   发布时间:2016-05-05 03:57:57.0
关于c#程序开机自启后不能读取读取指定配置文件的问题
把一个窗体程序设置开机自启后,程序开机自启读取的不是我指定位置的config.xml,我指定的是读取启动程序同级目录下的config.xml,它读取的却是C盘system32里的config.xml(我并没有在c盘创建config.xml),而且我手动启动程序,程序能正确读取程序同级目录下的config.xml,求大神教我,今晚肯定是睡不着觉了。
------解决思路----------------------
var filepath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "datas", "config.xml");



CurrentDomain.BaseDirectory具有通用性,对于 windows service和asp.net仍然适用。而不是仅用于winform。
------解决思路----------------------
        private static string _startupPath = AppDomain.CurrentDomain.BaseDirectory;

        public static string GetAppPath()
        {
            string path = Path.GetFullPath(_startupPath + "\\..\\");
            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }
            return path;
        }

用GetAppPath()方法或缺配置文件地址。