2013-02-13 33 views
1

我有一個情況,我有一個Windows應用程序,將創建文件夾在服務器上,如果它不存在,然後我會複製一個文件,但目前我得到訪問拒絕指定的路徑。這是我的。創建文件夾完全訪問時創建

If (Not System.IO.Directory.Exists(sdPath & "\DONE")) Then 
    System.IO.Directory.CreateDirectory(sdPath & "\DONE") 
    sdFileInfo.MoveTo(sdPath & "\DONE\" & sdFileName & sdFileInfo.Extension) 
Else 
    sdFileInfo.MoveTo(sdPath & "\DONE\" & sdFileName & sdFileInfo.Extension) 
End If 

我該如何給予完全訪問權限?

我有這段測試代碼,看看我是否可以獲得權限,但似乎沒有工作。

txtPath.Text = "\\ServerName\images\dbpics\POLPICS\55\Polpics\Actual\" 

Dim sFolderPath As String = txtPath.Text 
Dim sUserAccount As String = "(DomainName\Administrator)" 

Dim oFolderInfo As IO.DirectoryInfo = New IO.DirectoryInfo(sFolderPath) 
Dim oFolderAcl As New DirectorySecurity(txtPath.Text, System.Security.AccessControl.AccessControlSections.Access) 

oFolderAcl.AddAccessRule(New FileSystemAccessRule(sUserAccount, _ 
                FileSystemRights.FullControl, _ 
                AccessControlType.Allow)) 

oFolderInfo.SetAccessControl(oFolderAcl) 

oFolderAcl = Nothing 
oFolderInfo = Nothing 
enter code here 

回答

1

嘗試使用:

Imports System.Security.AccessControl 


Dim FolderPath As String = "C:\TestingFolder" 'Specify the folder here 
Dim UserAccount As String = "MYDOMAIN\someuser" 'Specify the user here 

Dim FolderInfo As IO.DirectoryInfo = New IO.DirectoryInfo(FolderPath) 
Dim FolderAcl As New DirectorySecurity 
FolderAcl.AddAccessRule(New FileSystemAccessRule(UserAccount, FileSystemRights.Modify,  InheritanceFlags.ContainerInherit Or InheritanceFlags.ObjectInherit, PropagationFlags.None, AccessControlType.Allow)) 
'FolderAcl.SetAccessRuleProtection(True, False) 'uncomment to remove existing permissions 
FolderInfo.SetAccessControl(FolderAcl) 

我是從這個URL

1

你可以選擇你想要的安全性添加到目錄中創建它:

System.IO.Directory.CreateDirectory(sFolderPath, dirSecurity) 

你可以請參閱​​和292文檔中的一些權限和示例MSDN的。