Condividi tramite


Metodo IADsGroup::Remove (iads.h)

Il metodo IADsGroup::Remove rimuove l'oggetto utente specificato da questo gruppo. L'operazione non rimuove l'oggetto gruppo stesso anche quando non è presente alcun membro rimanente nel gruppo.

Sintassi

HRESULT Remove(
  [in] BSTR bstrItemToBeRemoved
);

Parametri

[in] bstrItemToBeRemoved

Contiene un BSTR che specifica LDPath dell'oggetto da rimuovere dal gruppo. Per altre informazioni su questo parametro, vedere la sezione Osservazioni.

Valore restituito

Di seguito sono riportati i valori restituiti più comuni. Per altre informazioni sui valori restituiti, vedere Codici di errore ADSI.

Commenti

Se il provider LDAP viene usato per eseguire l'associazione all'oggetto IADsGroup , la stessa forma di ADsPath deve essere specificata nel parametro bstrItemToBeRemoved . Ad esempio, se ADsPath usato per eseguire il binding all'oggetto IADsGroup include un server, il parametro ADsPath nel parametro bstrItemToBeRemoved deve contenere lo stesso prefisso del server. Analogamente, se viene usato un percorso serverless per l'associazione all'oggetto IADsGroup , il parametro bstrItemToBeRemoved deve contenere anche un percorso serverless. L'eccezione si verifica quando si aggiunge o rimuove un membro usando un GUID o SID ADsPath. In questo caso, un percorso serverless deve essere sempre usato in bstrItemToBeRemoved.

È possibile usare un SID in ADsPath per rimuovere un'entità di sicurezza dal gruppo tramite il provider WinNT. Si supponga, ad esempio, che il SID di un utente, "Fabrikam\jeffsmith", sia S-1-5-21-35135249072896, l'istruzione seguente:

Dim group As IADsGroup
group.Remove("WinNT://S-1-5-21-35135249072896")

equivale a

Dim group As IADsGroup
group.Remove("WinNT://Fabrikam/jeffsmith")

La rimozione di un membro tramite il siD tramite il provider WinNT è una nuova funzionalità in Windows 2000 e il pacchetto DSCLIENT.

Esempio

Nell'esempio di codice seguente viene rimosso un account utente da un gruppo.

Dim grp As IADsGroup
On Error GoTo Cleanup

Set grp = GetObject("WinNT://Fabrikam/Administrators")
grp.Remove ("WinNT://Fabrikam/jeffsmith")

Cleanup:
    If (Err.Number<>0) Then
        MsgBox("An error has occurred. " & Err.Number)
    End If
    Set grp = Nothing

Nell'esempio di codice seguente viene rimosso un utente da un gruppo.

IADsGroup *pGroup = NULL;
HRESULT hr = S_OK;
LPWSTR usrPath = L"WinNT://Fabrikam/jeffsmith";
LPWSTR grpPath = L"WinNT://Fabrikam/Administrators";

hr = ADsGetObject(grpPath, IID_IADsGroup, (void**)&pGroup);
if(FAILED(hr)){goto Cleanup;}

hr = pGroup->Remove(CComBSTR(usrPath));
if(FAILED(hr)){goto Cleanup;}

Cleanup:
    if(pGroup)
        pGroup->Release();

Requisiti

   
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione iads.h
DLL Activeds.dll

Vedi anche

Codici di errore ADSI

IADsGroup

Metodi di proprietà IADsGroup

IADsMembers