zoukankan      html  css  js  c++  java
  • 设置IIsWebDirectory对象属性

    /// <summary>
            /// System.DirectoryServices.DirectoryEntry De = new DirectoryEntry();
            /// De.Path = @"IIS://localhost/W3SVC/1/ROOT/Dir1/Dir2/Dir3";
            /// RecursiveSetIIsWebDirectory(De);
            /// De.Properties["AccessFlags"][0] = 513;
            /// De.CommitChanges();
            /// </summary>
            /// <param name="IIsWebDirectoryObject"></param>
            public void RecursiveSetIIsWebDirectory(DirectoryEntry IIsWebDirectoryObject)
            {
                try
                {
                    bool temp = DirectoryEntry.Exists(IIsWebDirectoryObject.Path);
                }
                catch
                {
                    string DirName = "";
                    string Path = IIsWebDirectoryObject.Path;
                    string ParentPath = "";

                    DirName = Path.Substring(Path.LastIndexOf(@"/") + 1);
                    ParentPath = Path.Substring(0, Path.Length - (DirName.Length + 1));

                    DirectoryEntry ParentDe = new DirectoryEntry(ParentPath);
                    RecursiveSetIIsWebDirectory(ParentDe); // Call for parent directory

                    // Create a new entry in the IIS Metabase
                    DirectoryEntry newChild;
                    newChild = ParentDe.Children.Add(DirName, "IIsWebDirectory"); // Create the new IIsWebDirectory
                    newChild.CommitChanges(); // Commit the changes. Create a new IIsWebDirectory
                }
            }

            /// <summary>
            /// System.DirectoryServices.DirectoryEntry De = new DirectoryEntry();
            /// De.Path = @"IIS://localhost/W3SVC/1/ROOT/Dir1/Dir2/Dir3/file.txt";
            /// RecursiveSetIIsWebFile(De, 0);
            /// De.Properties["AccessFlags"][0] = 513;
            /// De.CommitChanges();
            /// </summary>
            /// <param name="DirectoryEntryObject"></param>
            /// <param name="depth"></param>
            public void RecursiveSetIIsWebFile(DirectoryEntry DirectoryEntryObject, int depth)
            {
                try
                {
                    bool temp = DirectoryEntry.Exists(DirectoryEntryObject.Path);
                }
                catch
                {
                    string DirName = "";
                    string Path = DirectoryEntryObject.Path;
                    string ParentPath = "";

                    DirName = Path.Substring(Path.LastIndexOf(@"/") + 1);
                    ParentPath = Path.Substring(0, Path.Length - (DirName.Length + 1));

                    DirectoryEntry ParentDe = new DirectoryEntry(ParentPath);
                    RecursiveSetIIsWebFile(ParentDe, depth + 1);

                    DirectoryEntry newChild;
                    if (depth == 0)
                    {
                        newChild = ParentDe.Children.Add(DirName, "IIsWebFile"); // Create the new IIsWebFile
                    }
                    else
                    {
                        newChild = ParentDe.Children.Add(DirName, "IIsWebDirectory"); // Create the new IIsWebDirectory
                    }
                    newChild.CommitChanges();
                }
            }

  • 相关阅读:
    精确计算微信小程序scrollview高度,全机型适配
    精确计算微信小程序scrollview高度,全机型适配
    七牛云赵之健:多维度融合赋能视频 AI 的实践
    javaweb学习总结(四十)——编写自己的JDBC框架
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    深度学习入门笔记(十三):批归一化(Batch Normalization)
    4G EPS 中的 Control Plane
    4G EPS 中建立 eNB 与 MME 之间的 S1 连接
  • 原文地址:https://www.cnblogs.com/love2wllw/p/1709771.html
Copyright © 2011-2022 走看看