Metode IDirectoryObject::SetObjectAttributes (iads.h)

Metode IDirectoryObject::SetObjectAttributes memodifikasi data dalam satu atau beberapa atribut objek tertentu yang ditentukan dalam struktur ADS_ATTR_INFO .

Sintaks

HRESULT SetObjectAttributes(
  [in]  PADS_ATTR_INFO pAttributeEntries,
  [in]  DWORD          dwNumAttributes,
  [out] DWORD          *pdwNumAttributesModified
);

Parameter

[in] pAttributeEntries

Menyediakan array atribut yang akan dimodifikasi. Setiap atribut berisi nama atribut, operasi yang akan dilakukan, dan nilai atribut, jika berlaku. Untuk informasi selengkapnya, lihat struktur ADS_ATTR_INFO .

[in] dwNumAttributes

Menyediakan jumlah atribut yang akan dimodifikasi. Nilai ini harus sesuai dengan ukuran array pAttributeEntries .

[out] pdwNumAttributesModified

Menyediakan penunjuk ke variabel DWORD yang berisi jumlah atribut yang dimodifikasi oleh metode SetObjectAttributes .

Menampilkan nilai

Metode ini mengembalikan nilai pengembalian standar, termasuk S_OK saat atribut berhasil diatur.

Untuk informasi selengkapnya dan nilai pengembalian lainnya, lihat Kode Kesalahan ADSI.

Keterangan

Di Direktori Aktif (penyedia LDAP), metode IDirectoryObject::SetObjectAttributes adalah panggilan yang ditransaksikan. Atribut semuanya diterapkan atau dibuang. Penyedia direktori lain mungkin tidak bertransaksi panggilan.

Direktori Aktif tidak mengizinkan nilai duplikat pada atribut multinilai. Namun, jika Anda memanggil SetObjectAttributes untuk menambahkan nilai duplikat ke atribut multinilai objek Direktori Aktif, panggilan SetObjectAttributes berhasil tetapi nilai duplikat diabaikan.

Demikian pula, jika Anda menggunakan SetObjectAttributes untuk menghapus satu atau beberapa nilai dari properti multinilai objek Direktori Aktif, operasi berhasil meskipun salah satu atau semua nilai yang ditentukan tidak diatur untuk properti

Contoh

Contoh kode C++ berikut mengatur atribut sn objek pengguna ke nilai Harga sebagai string yang tidak peka huruf besar/kecil.

HRESULT hr;
IDirectoryObject *pDirObject=NULL;
DWORD  dwReturn;
ADSVALUE  snValue;
ADS_ATTR_INFO attrInfo[] = { {L"sn",ADS_ATTR_UPDATE, ADSTYPE_CASE_IGNORE_STRING, &snValue, 1} };
DWORD dwAttrs = sizeof(attrInfo)/sizeof(ADS_ATTR_INFO); 
 
snValue.dwType=ADSTYPE_CASE_IGNORE_STRING;
snValue.CaseIgnoreString = L"Price";
 
hr = ADsGetObject(L"LDAP://CN=Jeff Smith,OU=Sales,DC=Fabrikam,DC=com",
        IID_IDirectoryObject, 
        (void**) &pDirObject );
 
if ( SUCCEEDED(hr) )
{
    hr = pDirObject->SetObjectAttributes(attrInfo, dwAttrs, &dwReturn);

    pDirObject->Release();
}

Persyaratan

   
Klien minimum yang didukung Windows Vista
Server minimum yang didukung Windows Server 2008
Target Platform Windows
Header iads.h
DLL Activeds.dll

Lihat juga

Kode Kesalahan ADSI

ADS_ATTR_INFO

IDirectoryObject