La siguiente función funciona en Windows XP, ahora la intento con Windows 7, devuelve el error IdentityNotMappedException ¿qué ocurre? También he cambiado la aplicación requestedexecutionlevel a admin.Establecer la regla de acceso a archivos
private static void file_accessdeny(string fileName)
{
try
{
System.Security.AccessControl.FileSecurity accessdeny = System.IO.File.GetAccessControl(fileName);
accessdeny.SetAccessRule(new System.Security.AccessControl.FileSystemAccessRule("Everyone", System.Security.AccessControl.FileSystemRights.FullControl, System.Security.AccessControl.AccessControlType.Deny));
System.IO.File.SetAccessControl(fileName, accessdeny);
}
catch (System.Exception E)
{
Console.WriteLine(E.Message);
System.Windows.Forms.MessageBox.Show(E.Message, "access deny");
}
}
error: System.Security.Principal.IdentityNotMappedException: Algunas o todas las referencias de identidad no pudieron traducirse
¿Es usted la instalación de Windows 7 usando el mismo lenguaje que el XP? ... use una referencia de identidad en lugar de la cadena "Todos" ... para que no tenga que preocuparse por la cultura en uso en ese momento. Puede usar el conocido SID para todos ... SID = "S-1-1-0" –