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

  1. Vincule-se ao contêiner que conterá o objeto a ser criado e obtenha a interface IADsContainer.
  2. Use o método IADsContainer.Create para criar um novo objeto no contêiner.
  3. 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.
  4. Defina os valores para todos os atributos opcionais desejados para o objeto usando o método IADs.Put ou IADs.PutEx.
  5. 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

  1. Vincule ao contêiner que conterá o objeto a ser criado e obtenha a interface IDirectoryObject.
  2. Aloque uma matriz de estruturas ADS_ATTR_INFO que contém uma estrutura para cada atributo a ser definido quando o objeto é criado.
  3. 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.
  4. Preencha uma estrutura ADS_ATTR_INFO para cada atributo opcional do objeto.
  5. 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.