2012-10-03 60 views
0

雖然刪除我的.dll文件System.UnauthorizedAccessException被引發。System.UnauthorizedAccessException while刪除DLL

System.IO.File.Delete("file name here.dll"); 

錯誤信息如下:

System.UnauthorizedAccessException:對路徑 'E:\ Projeler \溫泉AnahtarÜretici\ ConsoleApplication2 \ BIN \調試\ AutoGen.dll' 被拒絕。

如何解決這個問題?

+0

也許你沒有權限訪問文件夾或某些進程使用的DLL – horgh

+0

是的,你是對的。可能我無權刪除它。但如何刪除它?另外File.SetAttributes(filename,FileAttributes.Normal);不起作用。我曾嘗試更改文件安全性。 – Mesut

+1

如果您無權刪除文件夾,請將其作爲其他人運行。 – Arran

回答

0

嘗試使用File.Open方法打開文件,並將其放在try-catch中,併發生異常IOException。

如果文件正在使用中,則代碼流將到達異常部分,因此不會刪除該文件,否則您可以安全地刪除。

+0

現在它不被其他程序使用。我需要行政許可。 – Mesut

+0

這可能不是正確的做法。但請試一試。嘗試在寫入模式下打開文件。在這種情況下,如果您沒有permuission,它會拋出未經授權的異常。使用該流程來檢查文件是否可以刪除 – Rockstart

+0

好的,我解決了您的提示中的問題。最初,系統通過unAuthorizedException警告我。但創建streamWriter後,我得到了「文件正在使用」消息。謝謝... – Mesut