【问题标题】:Unable to write file to shared folder in C#无法将文件写入 C# 中的共享文件夹
【发布时间】:2020-03-30 09:53:52
【问题描述】:

我正在尝试将 csv 文件写入共享驱动器,但它似乎不起作用

System.IO.File.WriteAllBytes("E:\\test\\test.csv", fileContents);
System.IO.File.WriteAllBytes("Z:\\test\\test.csv", fileContents);
System.IO.File.WriteAllBytes("\\\\10.3.22.11\\path\\test.csv", fileContents);

现在第一行有效,但第二行和第三行不起作用。

对于第三行,例外是“访问路径被拒绝”,但共享路径不需要任何登录。我尝试将共享路径映射到 Z 驱动器并尝试使用第二行写入文件,该文件的例外是

Could not find a part of the path 'Z:\test\test.csv'.

【问题讨论】:

  • 1) IIS 不支持映射驱动器。 2) 当 UNC 路径发生故障时,捕获 SMB 数据包并了解可能出现的问题。

标签: c# asp.net iis


【解决方案1】:

据我所知,如果您想让 IIS 访问文件共享,您应该确保您的 IIS 应用程序池标识已修改为网络服务帐户或使用自定义域用户,并确保您已添加足够的权限共享文件夹,因为网络服务和本地系统都作为计算机帐户(DOMAIN\computer$)出现在网络上。

详细步骤如下:

修改应用池标识:

1.打开IIS管理控制台。

2.选择应用程序池和高级设置

3.修改应用程序池标识以使用自定义域帐户。

修改文件夹权限:

1.右击电脑,点击属性,你会发现你的电脑名称如下:

2.转到您的共享文件夹服务器,右键单击该文件夹并单击属性。然后你可以像这样 (Domain\Servername$) 将你的服务器帐户添加到它

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-10
    • 1970-01-01
    • 2013-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多