IADsPropertyList::P urgePropertyList メソッド (iads.h)
IADsPropertyList::P urgePropertyList メソッドは、プロパティ リストからすべてのアイテムを削除します。
構文
HRESULT PurgePropertyList();
戻り値
このメソッドは、S_OKを含む標準の HRESULT 戻り値をサポートしています。 詳細およびその他の戻り値については、「 ADSI エラー コード」を参照してください。
解説
PurgePropertyList メソッドが呼び出されると、すべての項目がキャッシュから削除されます。 したがって、 その後に GetPropertyItem を 呼び出すと、エラーが発生します。 PurgePropertyList はキャッシュの内容にのみ影響し、ディレクトリ内の実際のオブジェクトのプロパティには影響しないことに注意してください。つまり、PurgePropertyList を呼び出した後に SetInfo を呼び出しても、ディレクトリ オブジェクトのプロパティは削除されません。
例
次のコード例は、 IADsPropertyList::P urgePropertyList を実装する方法を示しています。
Dim propList As IADsPropertyList
On Error GoTo Cleanup
Set propList = GetObject("LDAP://dc03/DC=Fabrikam,DC=com")
propList.GetInfo
propList.PurgePropertyList
'- None of GetPropertyItem should work, because the list is purged.
'- The following line should generate error.
Set propEntry = propList.GetPropertyItem("adminDescription", ADSTYPE_CASE_IGNORE_STRING)
Cleanup:
If (Err.Number<>0) Then
MsgBox("An error has occurred. " & Err.Number)
End If
Set propList = Nothing
次のコード例は、 IADsPropertyList::P urgePropertyList の呼び出しによって生成される効果を示しています。 GetPropertyCache 関数とコード例の詳細については、「IADsPropertyList」を参照してください。
IADsPropertyList *GetPropertyCache(LPWSTR);
void TestPurgePropertyList()
{
IADsPropertyList *pList;
pList=GetPropertyCache(L"WinNT://myComputer,computer");
long count;
if(pList)
{
pList->get_PropertyCount(&count);
printf("Number of properties before purging: %d\n",count);
count = -1;
pList->PurgePropertyList();
pList->get_PropertyCount(&count);
printf("Number of properties after purging: %d\n",count);
}
}
要件
サポートされている最小のクライアント | Windows Vista |
サポートされている最小のサーバー | Windows Server 2008 |
対象プラットフォーム | Windows |
ヘッダー | iads.h |
[DLL] | Activeds.dll |