LDAPModA 結構 (winldap.h)
LDAPMod 結構會保存執行修改作業所需的數據。
語法
typedef struct ldapmodA {
ULONG mod_op;
PCHAR mod_type;
union {
PCHAR *modv_strvals;
berval **modv_bvals;
} mod_vals;
} LDAPModA, *PLDAPModA;
成員
mod_op
指定要執行的修改作業的下列其中一個值。
您可以使用位 OR 運算符,將作業值與 LDAP_MOD_BVALUES 結合,表示 mod_vals 聯集使用 modv_bvals 成員。 如果未設定 LDAP_MOD_BVALUES,聯集會使用 modv_strvals 成員。
LDAP_MOD_ADD (0x00)
將值加入至專案。 提供的值會附加至 屬性中的現有值。
LDAP_MOD_DELETE (0x01)
刪除專案中的值。 所提供的值會從目前的屬性值中刪除。
LDAP_MOD_REPLACE (0x02)
取代專案中的值。 提供的值會取代現有的屬性值。
mod_type
指定要修改之屬性名稱之 Null 終止字串的指標。
mod_vals
值陣列的指標,如果有的話,要加入、刪除或取代。 如果 mop_op 不包含LDAP_MOD_BVALUES旗標,則 modv_strvals 成員是 null 終止字串陣列的指標。 如果 mop_op 包含LDAP_MOD_BVALUES,則 modv_bvals 成員是 berval 指標陣列的指標,這對於指定二進位值很有用。
mod_vals.modv_strvals
Null 終止字串陣列的指標。 陣列的最後一個項目必須是 NULL 指標。
mod_vals.modv_bvals
NULL-terminated 陣組 berval 指標的指標。 陣列的最後一個項目必須是 NULL 指標。
言論
在您呼叫修改函式之前,請先將值指派給 LDAPMod 結構的欄位(ldap_add*或 ldap_modify*)。
ldap_modify* 傳遞 null 指標時,LDAP_MOD_REPLACE 作業不會刪除屬性。 不過,當 mod_vals 設定為 NULL時,LDAP_MOD_DELETE 會刪除整個屬性。
將 LDAPMod 結構傳遞至 ldap_add* 函式時,只有 LDAP_MOD_BVALUES 旗標很重要。 建立新的物件表示將值加入其中。
注意
winldap.h 標頭會將LDAPMod定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows Vista |
支援的最低伺服器 | Windows Server 2008 |
標頭 | winldap.h |