试了无数方法都不用!各种方法都是只能维持一会正常!在window/temp 和Temporary ASP.NET Files 加上 Network service 和 asp.net的权限! 正常了一会之后又不行!查看了目录发现之前加的Network service和asp.net用户权限都没有了! 回到之前一样!现在也找不到原因为何给目录加了权限运行一段时间后权限就会被删除!现在这个问题一直解决不了! 各位大神帮忙解决一下! 实在是很急!

解决方案 »

  1.   

    有杀毒软件保护?可以禁用看看。
    另外,编译成单一的dll文件发布比较好
      

  2.   

    查看了目录发现之前加的Network service和asp.net用户权限都没有了! 回到之前一样!
    很明显 是安全问题哦。
    一般是被 360啊等等  给你恢复了, 或者系统安全过搞
      

  3.   

    杀毒软件都关闭了! 还是一样!项目是没有编写成DLL的! 因为要经常修改!真的很急! 网上提供的ASP.NET重注册也不行! 每次都是只能正常一会儿!
      

  4.   

    估计和系统有关了。遇到过有人解决的呵呵  不是我。我的方法比较笨但是能解决;
    那就用代码重写指定文件夹权限(或者获取到后重新写之)using System;
    using System.Collections;
    using System.IO;
    using System.Security.AccessControl;
    static class Tester
    {    public static void Main()
        {
            try
            {
                string filename = @"f:\k"; //目标目录
                string account = @"Administrator";//用户名
                string userrights = @"RW";//权限字符串,自己定义的
                AddDirectorySecurity(filename, account, userrights);
                Console.ReadLine();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                Console.ReadLine();
            }
        }    static public void AddDirectorySecurity(string FileName, string Account, string UserRights)
        {
            FileSystemRights Rights = new FileSystemRights();        if (UserRights.IndexOf("R") >= 0)
            {
                Rights = Rights | FileSystemRights.Read;
            }
            if (UserRights.IndexOf("C") >= 0)
            {
                Rights = Rights | FileSystemRights.ChangePermissions;
            }
            if (UserRights.IndexOf("F") >= 0)
            {
                Rights = Rights | FileSystemRights.FullControl;
            }
            if (UserRights.IndexOf("W") >= 0)
            {
                Rights = Rights | FileSystemRights.Write;
            }        bool ok;
            DirectoryInfo dInfo = new DirectoryInfo(FileName);
            DirectorySecurity dSecurity = dInfo.GetAccessControl();
            InheritanceFlags iFlags = new InheritanceFlags();
            iFlags = InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit;
            FileSystemAccessRule AccessRule2 = new FileSystemAccessRule(Account, Rights, iFlags, PropagationFlags.None, AccessControlType.Allow);
            dSecurity.ModifyAccessRule(AccessControlModification.Add, AccessRule2, out ok);        dInfo.SetAccessControl(dSecurity);        //列出目标目录所具有的权限
            DirectorySecurity sec = Directory.GetAccessControl(FileName, AccessControlSections.All);
            foreach (FileSystemAccessRule rule in sec.GetAccessRules(true, true, typeof(System.Security.Principal.NTAccount)))
            {
                Console.WriteLine("----------------------------------");
                Console.WriteLine(rule.IdentityReference.Value);
                if ((rule.FileSystemRights & FileSystemRights.Read) != 0)
                    Console.WriteLine(rule.FileSystemRights.ToString());        }
            Console.Read();
        }}
      

  5.   

    window/temp 和Temporary ASP.NET Files  都是系统安装.NET时默认就有的权限! 最基本的就是asp.net这个用户是在目录权限中的! 但都被删除! 我开始以为是框架问题! 重装.net2.0 重装后正常!但运行一段时间又不行