IADsGroup::Remove-Methode (iads.h)
Die IADsGroup::Remove-Methode entfernt das angegebene Benutzerobjekt aus dieser Gruppe. Der Vorgang entfernt das Gruppenobjekt selbst nicht, auch wenn kein Mitglied in der Gruppe vorhanden ist.
Syntax
HRESULT Remove(
[in] BSTR bstrItemToBeRemoved
);
Parameter
[in] bstrItemToBeRemoved
Enthält einen BSTR , der den ADsPath des Objekts angibt, das aus der Gruppe entfernt werden soll. Weitere Informationen zu diesem Parameter finden Sie im Abschnitt Hinweise.
Rückgabewert
Im Folgenden finden Sie die häufigsten Rückgabewerte. Weitere Informationen zu Rückgabewerten finden Sie unter ADSI-Fehlercodes.
Hinweise
Wenn der LDAP-Anbieter zum Binden an das IADsGroup-Objekt verwendet wird, muss die gleiche Form von ADsPath im bstrItemToBeRemoved-Parameter angegeben werden. Wenn der zum Binden an das IADsGroup-Objekt verwendete ADsPath beispielsweise einen Server enthält, muss der ADsPath im bstrItemToBeRemoved-Parameter das gleiche Serverpräfix enthalten. Wenn ein serverloser Pfad zum Binden an das IADsGroup-Objekt verwendet wird, muss der bstrItemToBeRemoved-Parameter ebenfalls einen serverlosen Pfad enthalten. Die Ausnahme besteht beim Hinzufügen oder Entfernen eines Members mithilfe einer GUID oder SID ADsPath. In diesem Fall sollte in bstrItemToBeRemoved immer ein serverloser Pfad verwendet werden.
Sie können eine SID im ADsPath verwenden, um einen Sicherheitsprinzipal über den WinNT-Anbieter aus der Gruppe zu entfernen. Angenommen, die SID eines Benutzers, "Fabrikam\jeffsmith", ist S-1-5-21-35135249072896, die folgende Anweisung:
Dim group As IADsGroup
group.Remove("WinNT://S-1-5-21-35135249072896")
für die folgende Syntax:
Dim group As IADsGroup
group.Remove("WinNT://Fabrikam/jeffsmith")
Das Entfernen eines Mitglieds mithilfe seiner SID über den WinNT-Anbieter ist ein neues Feature in Windows 2000 und dem DSCLIENT-Paket.
Beispiele
Im folgenden Codebeispiel wird ein Benutzerkonto aus einer Gruppe entfernt.
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
Im folgenden Codebeispiel wird ein Benutzer aus einer Gruppe entfernt.
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();
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Windows |
Kopfzeile | iads.h |
DLL | Activeds.dll |