將輔助類別新增至物件實例
下列程式代碼範例示範如何使用ADSI和LDAP,以動態方式將輔助類別新增至現有的物件實例。 這些範例假設 Active Directory 架構中定義了名為 vehicle 的輔助類別,而且 車輛 類別具有 vin 屬性。
當您以動態方式將輔助類別新增至物件實例時,您必須同時指定類別中任何必要 mustHave 屬性的值。 下列範例示範如何使用 「vin」 屬性來執行此動作,該屬性假設為必要。
下列 C++ 範例會系結至 物件,並使用 IADs.PutEx 將輔助類別附加至物件 objectClass 屬性中的類別清單。 然後,此範例會使用 IADs.Put 來設定 vin 屬性的值。 最後,它會呼叫 IADs.SetInfo 來認可目錄的變更。
LPWSTR pszAuxClass[]={L"vehicle"};
LPWSTR pszVIN[]={L"df897dsfsa-0"};
VARIANT var;
VariantInit(&var);
ADsOpenObject(L"cn=johnd,cn=users,dc=fabrikam,dc=com",
NULL,
NULL,
ADS_SECURE_AUTHENTICATION,
IID_IADs,
(VOID**)&pIADs);
ADsBuildVarArrayStr(pszAuxClass, 1, &var);
pIADs->PutEx(ADS_PROPERTY_APPEND, CComBSTR("objectClass"), var);
ADsBuildVarArrayStr( pszVIN, 1, &var);
pIADs->Put(CComBSTR("vin"), var);
pIADs->SetInfo();
if(pIADs)
pIADs->Release();
VariantClear(&var);