Criando e excluindo objetos
Com o ADSI, os objetos são criados e excluídos usando a interface IADsContainer ou IDirectoryObject.
Criando um objeto com IADsContainer
Para criar um objeto com a interface IADsContainer
- Vincule-se ao contêiner que conterá o objeto a ser criado e obtenha a interface IADsContainer.
- Use o método IADsContainer.Create para criar um novo objeto no contêiner.
- Defina os valores para todos os atributos necessários para o objeto usando o método IADs.Put ou IADs.PutEx. Os atributos necessários para criar um objeto dependerão do serviço de diretório e do tipo de objeto criado. Para obter mais informações sobre como criar objetos do Active Directory, consulte Criando e excluindo objetos do Active Directory.
- Defina os valores para todos os atributos opcionais desejados para o objeto usando o método IADs.Put ou IADs.PutEx.
- Chame o método IADs.SetInfo para confirmar o objeto e seus atributos. O novo objeto não é realmente criado no serviço de diretório subjacente até que o método IADs.SetInfo seja chamado para confirmar os atributos.
Criando um objeto com IDirectoryObject
Para criar um objeto com a interface IDirectoryObject
- Vincule ao contêiner que conterá o objeto a ser criado e obtenha a interface IDirectoryObject.
- Aloque uma matriz de estruturas ADS_ATTR_INFO que contém uma estrutura para cada atributo a ser definido quando o objeto é criado.
- Preencha uma estrutura ADS_ATTR_INFO para cada atributo necessário para o objeto. Os atributos necessários para criar um objeto dependerão do serviço de diretório e do tipo de objeto criado. Para obter mais informações sobre como criar objetos do Active Directory, consulte Criando e excluindo objetos do Active Directory.
- Preencha uma estrutura ADS_ATTR_INFO para cada atributo opcional do objeto.
- Use o método IDirectoryObject::CreateDSObject para criar o objeto no contêiner. Esse método também confirma o objeto para o serviço de diretório subjacente. Se a matriz ADS_ATTR_INFO não contiver todos os atributos necessários para o objeto, IDirectoryObject::CreateDSObject falhará.
Excluindo um objeto
Para excluir um objeto, use o método IADsContainer::D elete ou IDirectoryObject::D eleteDSObject. Esses métodos falharão se o objeto excluído contiver objetos filho. Use o método IADsDeleteOps::D eleteObject para excluir um contêiner e todos os objetos filho do contêiner.
O que acontece com um objeto excluído depende do serviço de diretório subjacente. Para obter mais informações sobre como excluir objetos do Active Directory, consulte Criando e excluindo objetos do Active Directory.