2009-07-20 125 views
0

嘿,我正在使用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; 
      } 
     } 
    } 
+0

很高兴它帮助...在哪里写的路径? – 2009-07-20 08:55:25

回答

4

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

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

第二个编辑

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

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

+0

我没有任何项目设置的问题。问题在于它正在寻找email.config文件在错误的目录中,并且它正在查找的目录中只存在于我的开发机器上。 – akif 2009-07-20 07:39:02

相关问题