Compartir a través de


Método IADsGroup::Remove (iads.h)

El método IADsGroup::Remove quita el objeto de usuario especificado de este grupo. La operación no quita el propio objeto de grupo aunque no haya ningún miembro restante en el grupo.

Sintaxis

HRESULT Remove(
  [in] BSTR bstrItemToBeRemoved
);

Parámetros

[in] bstrItemToBeRemoved

Contiene un BSTR que especifica el ADsPath del objeto que se va a quitar del grupo. Para obtener más información sobre este parámetro, vea la sección Comentarios.

Valor devuelto

A continuación se muestran los valores devueltos más comunes. Para obtener más información sobre los valores devueltos, vea Códigos de error adsi.

Comentarios

Si el proveedor LDAP se usa para enlazar al objeto IADsGroup , se debe especificar el mismo formato de ADsPath en el parámetro bstrItemToBeRemoved . Por ejemplo, si el ADsPath usado para enlazar al objeto IADsGroup incluye un servidor, ADsPath en el parámetro bstrItemToBeRemoved debe contener el mismo prefijo de servidor. Del mismo modo, si se usa una ruta de acceso sin servidor para enlazar al objeto IADsGroup , el parámetro bstrItemToBeRemoved también debe contener una ruta de acceso sin servidor. La excepción es cuando se agrega o quita un miembro mediante un GUID o SID ADsPath. En este caso, siempre se debe usar una ruta de acceso sin servidor en bstrItemToBeRemoved.

Puede usar un SID en ADsPath para quitar una entidad de seguridad del grupo a través del proveedor winNT. Por ejemplo, supongamos que el SID de un usuario, "Fabrikam\jeffsmith", es S-1-5-21-35135249072896, la siguiente instrucción:

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

es equivalente a

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

Quitar un miembro mediante su SID a través del proveedor winNT es una nueva característica en Windows 2000 y el paquete DSCLIENT.

Ejemplos

En el ejemplo de código siguiente se quita una cuenta de usuario de un grupo.

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

En el ejemplo de código siguiente se quita un usuario de un grupo.

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();

Requisitos

   
Cliente mínimo compatible Windows Vista
Servidor mínimo compatible Windows Server 2008
Plataforma de destino Windows
Encabezado iads.h
Archivo DLL Activeds.dll

Consulte también

Códigos de error adsi

IADsGroup

Métodos de propiedad IADsGroup

IADsMembers