1

我正在使用 c# 和 asp 开发一个应用程序。它需要访问本地网络中的某些地方。表单中有一个文本框,它接受用户要访问的路径,并将其存储到一个名为 location 的字符串变量中。

如果应用程序在 Windows 7 中运行,if 循环总是返回 false。并且它仅在我从已安装的应用程序运行时发生,否则如果路径为 true,它将返回 true。这是代码:

文本框 BackupLocation 的输入是这样的

 \\192.168.0.33\Others (F)

. 如果应用程序托管在具有 Windows XP 的系统上,它可以正常工作

 System.IO.DirectoryInfo locationInfo = new System.IO.DirectoryInfo(BackupLocationTxt.Text);
        if (locationInfo.Exists) // always return false  if the application run in windows 7
       {

       }

为什么会这样?

4

3 回答 3

2

发生这种情况是因为您运行应用程序的用户无权读取这些文件夹。您可能需要向运行站点的帐户授予对这些文件夹的读取权限。

于 2010-11-13T12:23:46.820 回答
1

试试System.IO.Directory.Exists(string path)吧。

于 2010-11-13T12:23:47.410 回答
0

您的 ASP.NET 应用程序无权访问本地网络中其他计算机上的文件夹。

尝试使用在 LocalService 帐户下启动的 windows 服务。

于 2010-11-13T12:54:34.593 回答