2011-11-10 163 views
2

我想創建一個zip文件,並在ASP.NET應用程序中使用DotNetZip庫進行保存。 但由於某種原因,我得到當我試圖挽救它DotNetZip庫「訪問被拒絕的路徑」

對路徑的訪問被拒絕

錯誤。

我將TempFileFolder更改爲另一個文件夾並賦予其權限。仍然沒有運氣。

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

我發現a question但答案並沒有幫助我。

從上面的問題,一個答覆中提到:

此外,在您的示例tempFilePath不包括完整路徑,那也許是因爲它試圖將ZIP保存到從不同的文件夾你期望的(並已分配權限)?

如何弄清楚它試圖保存哪個文件夾,即使我提到TempFileFolderD:\temp\

有什麼想法?

回答

3

既然你說'給了權限'我假設你提供了運行ASP.NET和IIS進程文件的帳戶(s)對你試圖保存這個文件的文件夾的讀/寫權限。

'臨時文件夾'正是其名稱所描述的:一個臨時文件夾。如果圖書館需要做一些文件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) 
+0

它的工作。謝謝! – Naveen