Создание и удаление объектов
С помощью ADSI объекты создаются и удаляются с помощью интерфейса IADsContainer или IDirectoryObject.
Создание объекта с помощью IADsContainer
Создание объекта с помощью интерфейса IADsContainer
- Привяжитесь к контейнеру, который будет содержать создаваемый объект, и получите интерфейс IADsContainer.
- Используйте метод IADsContainer.Create для создания нового объекта в контейнере.
- Задайте значения для всех обязательных атрибутов объекта с помощью метода IADs.Put или IADs.PutEx. Атрибуты, необходимые для создания объекта, будут зависеть от службы каталогов и типа создаваемого объекта. Дополнительные сведения о создании объектов Active Directory см. в создании и удалении объектов Active Directory.
- Задайте значения для всех требуемых необязательных атрибутов для объекта с помощью метода IADs.Put или IADs.PutEx.
- Вызовите метод IADs.SetInfo для фиксации объекта и его атрибутов. Новый объект не создается в базовой службе каталогов, пока метод IADs.SetInfo не будет вызван для фиксации атрибутов.
Создание объекта с помощью IDirectoryObject
Создание объекта с помощью интерфейса IDirectoryObject
- Привязывайтесь к контейнеру, который будет содержать созданный объект, и получите интерфейс IDirectoryObject.
- Выделите массив ADS_ATTR_INFO структур, содержащих одну структуру для каждого атрибута, который необходимо задать при создании объекта.
- Заполните структуру ADS_ATTR_INFO для каждого обязательного атрибута для объекта. Атрибуты, необходимые для создания объекта, будут зависеть от службы каталогов и типа создаваемого объекта. Дополнительные сведения о создании объектов Active Directory см. в создании и удалении объектов Active Directory.
- Заполните структуру ADS_ATTR_INFO для каждого необязательного атрибута для объекта.
- Используйте метод IDirectoryObject::CreateDSObject для создания объекта в контейнере. Этот метод также фиксирует объект в базовой службе каталогов. Если массив ADS_ATTR_INFO не содержит все необходимые атрибуты для объекта, IDirectoryObject::CreateDSObject завершится ошибкой.
Удаление объекта
Чтобы удалить объект, используйте метод IADsContainer::Delete или метод IDirectoryObject::DeleteDSObject. Эти методы завершаются ошибкой, если удаленный объект содержит все дочерние объекты. Используйте метод IADsDeleteOps::DeleteObject для удаления контейнера и всех дочерних объектов контейнера.
Что происходит с удаленным объектом, зависит от базовой службы каталогов. Дополнительные сведения об удалении объектов Active Directory см. в создании и удалении объектов Active Directory.