DirectoryEntries.Remove(DirectoryEntry) 方法

定义

删除此集合的一个成员。

public:
 void Remove(System::DirectoryServices::DirectoryEntry ^ entry);
public void Remove (System.DirectoryServices.DirectoryEntry entry);
member this.Remove : System.DirectoryServices.DirectoryEntry -> unit
Public Sub Remove (entry As DirectoryEntry)

参数

entry
DirectoryEntry

要删除的 DirectoryEntry 对象的名称。

例外

调用基础接口时出错。

示例

下面的 Visual Basic .NET 示例使用指定路径创建一个新的 DirectoryEntry 对象,然后在容器中创建一个新条目并保存它。 最后,它将检索新条目并将其删除。

Imports System  
Imports System.DirectoryServices  

Class MyClass1  
   Shared Sub Main()  
      Try  
         Dim strPath As String = "IIS://localhost/W3SVC/1/Root"  
         Dim strName As String = ""  

         ' Create a new 'DirectoryEntry' object with the given path.  
         Dim myDE As New DirectoryEntry(strPath)  
         Dim myEntries As DirectoryEntries = myDE.Children  

         ' Create a new entry 'Sample' in the container.  
         Dim myDirectoryEntry As DirectoryEntry = myEntries.Add("Sample", myDE.SchemaClassName)  
         ' Save changes of entry in the 'Active Directory Domain Services'.  
         myDirectoryEntry.CommitChanges()  
         Console.WriteLine(myDirectoryEntry.Name + " entry is created in container.")  

         ' Find 'Sample' entry in container.  
         myDirectoryEntry = myEntries.Find("Sample", myDE.SchemaClassName)  
         Console.WriteLine(myDirectoryEntry.Name + " found in container.")  
         ' Remove 'Sample' entry from container.  
         strName = myDirectoryEntry.Name  
         myEntries.Remove(myDirectoryEntry)  
         Console.WriteLine(strName + " entry is removed from container.")  

      Catch e As Exception  
         Console.WriteLine("The following exception was raised : {0}", e.Message.ToString())  
      End Try  
   End Sub 'Main  
End Class 'MyClass1  

下面的 C# 示例使用指定路径创建一个新的 DirectoryEntry 对象,然后在容器中创建一个新条目并保存它。 最后,它将检索新条目并将其删除。

using System;  
using System.DirectoryServices;   

class MyClass1  
{  
   static void Main()  
   {  
      try  
      {  
         String strPath = "IIS://localhost/W3SVC/1/Root";  
         String strName = "";  

         // Create a new 'DirectoryEntry' object with the given path.  
         DirectoryEntry myDE = new DirectoryEntry(strPath);  
         DirectoryEntries myEntries = myDE.Children;  

         // Create a new entry 'Sample' in the container.  
         DirectoryEntry myDirectoryEntry =   
            myEntries.Add("Sample", myDE.SchemaClassName);  
         // Save changes of entry in the 'Active Directory Domain Services'.  
         myDirectoryEntry.CommitChanges();  
         Console.WriteLine (myDirectoryEntry.Name +   
            " entry is created in container.");  

         // Find 'Sample' entry in container.  
         myDirectoryEntry = myEntries.Find("Sample", myDE.SchemaClassName);  
         Console.WriteLine(myDirectoryEntry.Name + " found in container.");  
         // Remove 'Sample' entry from container.  
         strName = myDirectoryEntry.Name;  
         myEntries.Remove(myDirectoryEntry);  
         Console.WriteLine(strName+ " entry is removed from container.");  

      }  
      catch(Exception e)  
      {  
         Console.WriteLine("The following exception was raised : {0}",  
            e.Message);  
      }  
   }  
}  

以下 C++ 示例使用指定路径创建一个新的 DirectoryEntry 对象,然后在容器中创建一个新条目并保存它。 最后,它将检索新条目并将其删除。

#using <mscorlib.dll>  
#using <System.dll>  
#using <System.Directoryservices.dll>  

using namespace System;  
using namespace System::DirectoryServices;   

int main() {  
    try {  
        String* strPath = S"IIS://localhost/W3SVC/1/Root";  
        String* strName = S"";  

        // Create a new 'DirectoryEntry' object with the given path.  
        DirectoryEntry* myDE = new DirectoryEntry(strPath);  
        DirectoryEntries* myEntries = myDE->Children;  

        // Create a new entry 'Sample' in the container.  
        DirectoryEntry* myDirectoryEntry =  myEntries->Add(S"Sample", myDE->SchemaClassName);  
        // Save changes of entry in the 'Active Directory Domain Services'.  
        myDirectoryEntry->CommitChanges();  
        Console::WriteLine(S"{0} entry is created in container.", myDirectoryEntry->Name);  

        // Find 'Sample' entry in container.  
        myDirectoryEntry = myEntries->Find(S"Sample", myDE->SchemaClassName);  
        Console::WriteLine(S"{0} found in container.", myDirectoryEntry->Name);  
        // Remove 'Sample' entry from container.  
        strName = myDirectoryEntry->Name;  
        myEntries->Remove(myDirectoryEntry);  
        Console::WriteLine(S"{0} entry is removed from container.", strName);  
    } catch(Exception* e) {  
        Console::WriteLine(S"The following exception was raised : {0}", e->Message);  
    }  
}  

注解

如果要删除的条目是容器,则容器必须为空。 若要删除容器及其所有子级,请使用 DeleteTree 方法。

适用于