DirectoryEntries.Remove(DirectoryEntry) Method

Definition

Deletes a member of this collection.

public void Remove (System.DirectoryServices.DirectoryEntry entry);

Parameters

entry
DirectoryEntry

The name of the DirectoryEntry object to delete.

Exceptions

An error occurred during the call to the underlying interface.

Examples

The following Visual Basic .NET example creates a new DirectoryEntry object with the specified path, then creates a new entry in the container and saves it. Finally, it retrieves the new entry and deletes it.

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  

The following C# example creates a new DirectoryEntry object with the specified path, then creates a new entry in the container and saves it. Finally, it retrieves the new entry and deletes it.

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);  
      }  
   }  
}  

The following C++ example creates a new DirectoryEntry object with the specified path, then creates a new entry in the container and saves it. Finally, it retrieves the new entry and deletes it.

#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);  
    }  
}  

Remarks

If the entry to be removed is a container, the container must be empty. To delete a container and all its children, use the DeleteTree method.

Applies to

Produk Versi
.NET 8 (package-provided), 9 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7 (package-provided), 4.7, 4.7.1 (package-provided), 4.7.1, 4.7.2 (package-provided), 4.7.2, 4.8 (package-provided), 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9