Создание и удаление объектов
С помощью 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::D elete или IDirectoryObject::D eleteDSObject. Эти методы завершаются ошибкой, если удаленный объект содержит все дочерние объекты. Используйте метод IADsDeleteOps::D eleteObject для удаления контейнера и всех дочерних объектов контейнера.
Что происходит с удаленным объектом, зависит от базовой службы каталогов. Дополнительные сведения об удалении объектов Active Directory см. в статье "Создание и удаление объектов Active Directory".