Metode IDirectorySearch::ExecuteSearch (iads.h)

Metode IDirectorySearch::ExecuteSearch menjalankan pencarian dan meneruskan hasilnya ke pemanggil. Beberapa penyedia, seperti LDAP, akan menunda eksekusi aktual sampai pemanggil memanggil metode IDirectorySearch::GetFirstRow atau metode IDirectorySearch::GetNextRow .

Sintaks

HRESULT ExecuteSearch(
  [in]  LPWSTR             pszSearchFilter,
  [in]  LPWSTR             *pAttributeNames,
  [in]  DWORD              dwNumberAttributes,
  [out] PADS_SEARCH_HANDLE phSearchResult
);

Parameter

[in] pszSearchFilter

String filter pencarian dalam format LDAP, seperti "(objectClass=user)".

[in] pAttributeNames

Array nama atribut yang datanya diminta. Jika NULL, dwNumberAttributes harus 0 atau 0xFFFFFFFF.

[in] dwNumberAttributes

Ukuran array pAttributeNames . Nilai khusus 0xFFFFFFFF menunjukkan bahwa pAttributeNames diabaikan dan dapat berupa NULL. Nilai khusus ini berarti bahwa semua atribut yang ditetapkan diminta. Jika nilai ini adalah 0 array pAttributeNames bisa null. Tidak ada atribut yang akan diminta.

[out] phSearchResult

Alamat handel yang dialokasikan metode ke konteks pencarian. Penelepon meneruskan handel ini ke metode lain dari IDirectorySearch untuk memeriksa hasil pencarian. Jika NULL, pencarian tidak dapat dijalankan.

Mengembalikan nilai

Metode ini mengembalikan nilai pengembalian standar, serta yang berikut ini:

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

Keterangan

Ketika filter pencarian (pszSearchFilter) berisi atribut jenis ADS_UTC_TIME , nilainya harus dalam format "yymmddhhmmssZ" di mana "y", "m", "d", "h", "m" dan "s" berdiri masing-masing untuk tahun, bulan, hari, jam, menit, dan kedua. Dalam format ini, misalnya, "10:20:00 13Mei 1999" menjadi "990513102000Z". Huruf akhir "Z" adalah sintaks yang diperlukan dan menunjukkan Waktu Zulu atau Waktu Terkoordinasi Universal.

Pemanggil harus memanggil IDirectorySearch::CloseSearchHandle untuk merilis memori yang dialokasikan untuk handel pencarian dan hasilnya.

Saat menggunakan nilai khusus 0xFFFFFFFF untuk dwNumberAttributes, pengambilan LDAP ADsPath atau distinguishedName tidak memiliki sumber daya atau biaya waktu tambahan.

Contoh

Contoh kode C++ berikut menunjukkan cara memanggil IDirectorySearch::ExecuteSearch.

LPWSTR pszAttr[] = { L"ADsPath", L"Name", L"samAccountName" };
ADS_SEARCH_HANDLE hSearch;
DWORD dwCount= sizeof(pszAttr)/sizeof(LPWSTR);
 
// Search for users with a last name that begins with "h".
hr = m_pSearch->ExecuteSearch(L"(&(objectClass=user)(sn=h*))", pszAttr, dwCount, &hSearch );

Persyaratan

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

Lihat juga

Kode Kesalahan ADSI

IDirectorySearch

IDirectorySearch::CloseSearchHandle

IDirectorySearch::GetFirstRow

IDirectorySearch::GetNextRow