gpt4 book ai didi

asp.net-mvc - 为什么即使授予 IIS_IUSRS 对该目录的写权限,我仍然收到 "Access to the path ' C :\. ..\.. .' is denied"?

转载 作者:行者123 更新时间:2023-12-04 13:05:34 27 4
gpt4 key购买 nike

我在我的 Controller 上写了一个方法,它自动为我的客户生成一个 powerpoint 甲板,一切正常......除了我坚持将文件保存到磁盘的部分。

我对这个概念并不陌生。并且“认为”我需要做的就是授予 IIS_IUSRS 对该目录的写入权限和对所有父目录的读取权限。我正在使用 IIS 7,并且我之前已经使用 IIS 6 授予 NETWORK SERVICE 相同的权限。

只是为了踢球,我什至给了每个人对该目录的写权限,但我仍然不断收到异常:System.UnauthorizedAccessException:对路径“C:......\Content\PPT”的访问被拒绝。 (为简单起见,我删除了一些路径)。

还有什么我忽略的吗?它所在的服务器是我设置的第一个服务器,所以我可能忽略了一些东西?

这是我的 Controller 方法简化:

public ActionResult CreatePowerPoint()
{
string path = HttpContext.Server.MapPath("~/Content/PPT");

Aspose.Slides.Presentation presentation = new Aspose.Slides.Presentation();
CreatePresentation(presentation);

presentation.Save(path, Aspose.Slides.Export.SaveFormat.Ppt);

return View();
}
}

Presentation.Save() 方法采用路径和保存格式...我不知道还能尝试什么...我的代码有问题吗?我是否错误地创建了路径?我还可以将 Stream 流传递到 save 方法中,但我不确定这是否能解决问题。

最佳答案

我找到了解决方案 - 我使用的是 IIS 7,并且我将应用程序池设置为错误的身份。在 IIS 7 中,我只是更改了我的应用程序运行所在的应用程序池的标识,然后一切正常。我使用网络服务作为我的身份。

同样对于那些使用 Aspose Slides 的人,我还必须确保文件名在路径中。

关于asp.net-mvc - 为什么即使授予 IIS_IUSRS 对该目录的写权限,我仍然收到 "Access to the path ' C :\. ..\.. .' is denied"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5292148/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com