4

我正在尝试创建一个 zip 文件并使用 ASP.NET 应用程序中的 DotNetZip 库保存它。但由于某种原因,我得到了一个

访问路径被拒绝

当我尝试保存它时出错。

我将其更改TempFileFolder为另一个文件夹并授予了权限。仍然没有运气。

Dim zipFile As New ZipFile()
zipFile.AddFile(filePath)
Dim tempFilePath As String = "Report.zip"
zipFile.TempFileFolder = "D:\Temp\"
zipFile.Save(tempFilePath);

我发现了一个问题,但答案对我没有帮助。

从上述问题中,一个答案提到:

此外,您示例中的 tempFilePath 不包含完整路径,可能是它试图将 ZIP 保存到与您期望的文件夹不同的文件夹中(并已分配权限)?

即使我提到了,如何确定它试图保存到哪个文件TempFileFolderD:\temp\

有什么想法吗?

4

2 回答 2

4

既然您说您“授予权限”,我假设您提供了运行 ASP.NET 和 IIS 进程的帐户对您尝试保存此文件的文件夹的文件读/写权限。

“临时文件夹”正如其名称所描述的:一个临时文件夹。如果库需要执行一些文件 I/O,它是一个存放位置。它不是基本文件。

修改代码以提供完全限定的路径名​​以将文件保存到:

Dim zipFile As New ZipFile()
zipFile.AddFile(filePath)
Dim tempFilePath As String = "D:\Temp\Report.zip"
zipFile.TempFileFolder = "D:\Temp\"
zipFile.Save(tempFilePath)
于 2011-11-10T06:53:01.767 回答
0

检查文件是否不是只读的

于 2020-10-23T20:29:30.687 回答