C#访问网络磁盘

时间:2016-07-11 13:41:29

标签: c# asp.net

我正在尝试使用C#访问网络磁盘,我尝试过这样做:

if (!Directory.Exists(path)) //With \\Server\path

OR

if (!(new FileInfo(path).Exist)) //With \\Server\path

两个都告诉我它不存在。

我必须说,我正在运行一个ASP.NET站点,我正试图从那里到达它,我不知道这是否重要?

我要做的事情是我的DLL需要一条到其内容根目录的路径,所以我需要指定路径,路径位于磁盘S但磁盘S不是逻辑磁盘,它是网络磁盘。

我们以整个域的管理员身份启动IIS网站,以防止没有权限。

3 个答案:

答案 0 :(得分:0)

Server\\path\path\path

对我来说看起来不像是正确的UNC路径名。

\\Server\path\path\path

应该是正确的。

其次,运行IIS进程的用户帐户需要具有相关网络位置的适当权限。使用的身份通常由其所在的应用程序池确定,或者如果您的应用程序使用模拟,则可能将其标识为客户端用户。无论哪种方式,您都应该小心,只授予应用程序绝对必需的权限,而不是更多。

答案 1 :(得分:0)

为池和网站设置后,管理员作为启动流程的帐户,并添加“@”和'\',我们设法访问网络文件夹(谢谢大家!),当前状态:DLL说它找不到它的路径......

因此,我们现在编写的代码具有访问权限,但DLL表示无法找到路径,因此我们联系了制作DLL的所有者。

答案 2 :(得分:-3)

对于存在的检查文件,您必须使用此:

if(!File.Exists("path"))

要检查文件夹存在,您必须使用此:

if (!Directory.Exists("Path"))