Creating XML file with write access given to all the windows account users

后端 未结 3 515
有刺的猬
有刺的猬 2021-01-24 01:19

I am creating an XML file in the common application folder using C#:

%ALLUSERSPROFILE%\\Application Data\\

File will be created when applicatio

3条回答
  •  轻奢々
    轻奢々 (楼主)
    2021-01-24 01:43

    I had a similar problem with a service install. You can use the following code to give a folder different permissions.

    public static void CreateWithFullAccess(string targetDirectory)
        {
            try
            {
                if (!Directory.Exists(targetDirectory))
                {
                    Directory.CreateDirectory(targetDirectory);
                }
                DirectoryInfo info = new DirectoryInfo(targetDirectory);
                SecurityIdentifier allUsersSid =
                new SecurityIdentifier(WellKnownSidType.LocalServiceSid,
                null);
                DirectorySecurity security = info.GetAccessControl();
                security.AddAccessRule(
                new FileSystemAccessRule(allUsersSid,
                FileSystemRights.FullControl,
                AccessControlType.Allow));
                info.SetAccessControl(security);
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.ToString());
            }
        }
    

提交回复
热议问题