在我的.net窗口應用程序中,我使用的是xml
文件。 但after installing the application
通過創建安裝程序,而我正在運行tha t 'Access Denied' to that xml
文件消息顯示。'訪問被拒絕'到Windows應用程序中的xml文件
我正在使用System.IO.File
做文件操作的方法。
如果任何機構知道解決方案將分享。
在我的.net窗口應用程序中,我使用的是xml
文件。 但after installing the application
通過創建安裝程序,而我正在運行tha t 'Access Denied' to that xml
文件消息顯示。'訪問被拒絕'到Windows應用程序中的xml文件
我正在使用System.IO.File
做文件操作的方法。
如果任何機構知道解決方案將分享。
Program Files文件夾的訪問權限有限,可以通過管理員帳戶進行修改。我建議你保存你的xml文件在* C:\ Users \ YourPCName \ AppData \ Local \ YourAppFolder *。
這樣你就可以訪問和修改文件
到程序目錄的寫訪問已經越來越受到限制(從XP/Vista的),因爲這是一個secruity風險!
我建議有該文件的「基礎版」只讀在你的程序目錄...
在您的應用程序的開始,你檢查它是否存在於ApplicationData
或LocalApplicationData
或CommonApplicationData
- (獲得運行時的實際路徑使用Environment.GetFolderPath
)。如果它不存在,則將其複製到那裏 - 在這些位置,您的應用程序默認情況下具有寫權限,不需要管理員權限。
我曾經遇到過這個問題,所以我使用了獨立存儲並解決了我的問題。它可能會或可能不適合你根據你的情況的工作性質,但這裏有一個關於如何使用它的快速教程:
如果這是適用於您的解決方案,那麼它將使您不必告訴人們必須以管理員身份運行您的應用程序。 –
哪裏xml文件駐留?在應用程序目錄中? – Yahia
嘗試運行您的程序提升?如果解決了這個問題,您應該將文件存儲在'Program Files'之外的某個位置,在這裏您沒有寫入權限。 (例如用戶的簡檔)。看到這個問題:http://stackoverflow.com/questions/2362946/write-in-programdata-folder-w7-and-vista-net –
@Yahia:是的。在應用程序目錄裏面有一個名爲XMl的文件夾,裏面的文件是這個文件。xml – Nithesh