2016-07-04 80 views
0

我現在的問題是,我需要我的程序能夠寫入具有某些文件和文件夾權限的網絡驅動器,該權限不允許當前用戶編寫,編輯或刪除直接在這個驅動器上,因爲他們不斷搞亂我們的目錄。但我仍然需要這些權限爲我的應用程序。有什麼辦法可以解決這個問題嗎?C#應用程序中的文件和文件夾權限

+0

添加權限到文件夾,您要訪問。 –

+1

您需要模仿:http://stackoverflow.com/questions/125341/how-do-you-do-impersonation-in-net在用戶中運行您的應用程序,該用戶可以訪問該目錄。 – 2016-07-04 12:46:16

回答

0

添加Everyone用戶有完全權限,在普通的應用程序路徑產品文件夾可以讓你在這個驅動器的安全選項卡中直接刪除

var installationDir = new DirectoryInfo(strInstallationPath);  

DirectorySecurity myDirectorySecurity = installationDir.GetAccessControl(); 
myDirectorySecurity.AddAccessRule(new FileSystemAccessRule("EveryOne", FileSystemRights.FullControl, (InheritanceFlags)3, PropagationFlags.NoPropagateInherit, AccessControlType.Allow)); 
installationDir.SetAccessControl(myDirectorySecurity); 
FileInfo myFile = installationDir.GetFiles("abc.txt"); 
myFile.Delete();