日期:2014-05-17  浏览次数:21489 次

文件存在但File.Exists得到的结果却是不存在.
我有一个程序需要复制C:\Windows\System32\inetsrv\config\applicationHost.config这个文件到其他目录下.这个是IIS7的配置存放文件.

这个文件实际是存在的,我输入地址后也能打开文件.但使用File.Exists得到的结果却是不存在,直接使用File.Copy来复制也报文件不存在异常.

我之前以为是文件权限的原因,但我后来把权限修改成everyone可读写,并且把所有者设置成administrator后还是一样有问题(程序是在administrator账户权限下运行的).

请问可能有什么原因导致这种情况呢?
------最佳解决方案--------------------
本帖最后由 bdmh 于 2012-11-23 15:47:32 编辑 发布到iis后,不能这么访问,要用 Server.MapPath("xxx")
------其他解决方案--------------------
明显路径问题
------其他解决方案--------------------
不是的,我是用C#中的File.Copy来复制的.
------其他解决方案--------------------
而且我命令行下用 type C:\Windows\System32\inetsrv\config\applicationHost.config
是可以输出文件内容的,说明这个路径肯定是对的
------其他解决方案--------------------
我试过了,C:\Windows\System32\inetsrv\config它的上一级目录下的文件,以及和它同级的其他目录下的文件,C#都是认为存在的.
就只有config目录下的文件都提示不存在.

而且我都是可以直接复制,或者命令行里用copy命令复制文件,操作没有任何问题.