共用方式為


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

另請參閱

數據結構

修改目錄專案

berval

ldap_add

ldap_modify

ldap_modify_s