共用方式為


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 終止陣列的指標。 數位的最後一個項目必須是 NULL 指標。

mod_vals.modv_bvals

berval 指標之 NULL 終止數位的指標。 數位的最後一個項目必須是 NULL 指標。

備註

在呼叫修改函式 ( ldap_add*ldap_modify*) 之前,將值指派給 LDAPMod 結構的欄位。

ldap_modify* 搭配 LDAP_MOD_REPLACE 作業在傳遞 null 指標時不會刪除屬性。 不過,當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