Dim directoryProperties As System.IO.DirectoryInfo = New DirectoryInfo(App.ApplicationDataDirectory)
'Get a DirectorySecurity object that represents the current security settings.
Dim dSecurity As System.Security.AccessControl.DirectorySecurity = directoryProperties.GetAccessControl()
'Set the new access settings for my user
dSecurity.AddAccessRule(New FileSystemAccessRule("sgray@mydomain.com", FileSystemRights.FullControl, InheritanceFlags.ContainerInherit, PropagationFlags.None, AccessControlType.Allow))
dSecurity.AddAccessRule(New FileSystemAccessRule("sgray@mydomain.com", FileSystemRights.FullControl, InheritanceFlags.ObjectInherit, PropagationFlags.InheritOnly, AccessControlType.Allow))
'add security for users other than me
Dim strUser As String = String.Format("{0}@mydomain.com", App.UserName)
Select Case App.UserName.ToUpper
Case "SGRAY"
Case Else
dSecurity.AddAccessRule(New FileSystemAccessRule(strUser, FileSystemRights.FullControl, InheritanceFlags.ContainerInherit, PropagationFlags.None, AccessControlType.Allow))
dSecurity.AddAccessRule(New FileSystemAccessRule(strUser, FileSystemRights.FullControl, InheritanceFlags.ObjectInherit, PropagationFlags.InheritOnly, AccessControlType.Allow))
End Select
directoryProperties.SetAccessControl(dSecurity)