2011-07-19 52 views
2

我有一個使用的處理器通過SWFUpload的保存上傳的文件,我將文件保存在服務器上的這樣一個aspx網頁鎖定我保存文件保持鎖定狀態(通過w3wp.exe),直到我重新啓動IIS。 保存後有什麼方法可以釋放文件嗎? 謝謝文件之後HttpPostedFile另存爲(LocationOnServer)

回答

3

我曾經處理過相同的情況。您需要在域帳戶下運行您的應用程序池。也就是說,運行Web應用程序的應用程序池應設置爲以域用戶身份運行。然後,應該爲同一個域用戶授予您試圖上傳到的文件夾的權限。爲了將域用戶分配給您的應用程序池,請從IIS中的應用程序池節點中選擇適當的池,右鍵單擊並選擇屬性。從屬性對話框中選擇標識選項卡,然後選擇「可配置」,然後提供一個域帳戶。然後你應該給你的文件夾上的同一個用戶授予權限。

+0

謝謝你做了我使用這個技巧:http://learn.iis.net/page.aspx/624/application-pool-identities/ – kleinohad

1

我找不到任何文檔,但您可能必須處置HttpPostedFile對象。大多數情況下,如果文件被鎖定,那麼與它們關聯的某個對象就沒有妥善處理。

0

我會檢查服務器上的文件夾權限。我遇到了類似的問題,即應用程序能夠創建文件但不寫入,導致文件鎖定。

0

你試過對它調用Finalize()嗎?你有沒有可能試圖抓取文件的防病毒或備份軟件?

我不認爲權限是問題,因爲如果您沒有對該文件夾的權限,則無法首先將文件寫入該文件夾。