找不到路径的一部分

时间:2009-07-20 07:15:28

标签: c# file config

嘿我正在使用 ExeConfigurationFileMap 类的 OpenMappedExeConfiguration 方法打开配置文件。配置文件由同一目录中的两个程序使用。

我的开发机器上的一切正常,但是当我将程序复制到另一台机器时,我在执行程序时遇到了这个错误

Code not find a part of the path D:\email\email.config

其他程序可以轻松访问email.config文件。一切都是一个目录,但另一个程序指向我的开发机器中的旧路径:(

以下是抛出异常的代码的一部分

class Program
    {
        static readonly string configFileName = "email.config";

        static int Main(string[] args)
        {
            try
            {
                var configMap = new ExeConfigurationFileMap { ExeConfigFilename = configFileName };
                Configuration externalConfig = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigurationUserLevel.None);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return 1;
            }
        }
    }

1 个答案:

答案 0 :(得分:4)

您是否尝试搜索该路径的项目(包括配置文件)?它肯定会写在某个地方,你只需要找到它......

编辑:我明白你的问题是什么,我只是说了 您的程序正在搜索的D:\email路径来自您的配置文件中代码中的某个位置。试着在你的项目中搜索“D:”;在Visual Studio中使用find in files命令(ctrl + shift + f)并确保在“查看此文件类型”框中指定*.*

第二次编辑

  

不,我没有在我的代码和配置文件中的任何地方指定路径。

如果您尝试按照我的建议搜索路径(如果尚未执行此操作,请执行此操作),然后检查目标计算机上的配置文件。那个路径写在某个地方,你必须找到哪里,为此你必须使用某种工具(甚至Windows的文件搜索都应该这样做)。