Método IDirectorySearch::GetColumn (iads.h)
O método IDirectorySearch::GetColumn obtém dados de uma coluna nomeada do resultado da pesquisa.
Sintaxe
HRESULT GetColumn(
[in] ADS_SEARCH_HANDLE hSearchResult,
[in] LPWSTR szColumnName,
[out] PADS_SEARCH_COLUMN pSearchColumn
);
Parâmetros
[in] hSearchResult
Fornece um identificador para o contexto de pesquisa.
[in] szColumnName
Fornece o nome da coluna para a qual os dados são solicitados.
[out] pSearchColumn
Fornece o endereço de uma estrutura ADS_SEARCH_COLUMN alocada pelo método que contém a coluna da linha atual do resultado da pesquisa.
Valor retornado
Esse método retorna os valores de retorno padrão, bem como os seguintes.
Para obter outros valores retornados, consulte Códigos de erro ADSI.
Comentários
O método aloca a memória para a estrutura ADS_SEARCH_COLUMN manter os dados da coluna. Mas o chamador deve liberar a memória chamando IDirectorySearch::FreeColumn.
O método IDirectorySearch::GetColumn tenta ler a definição de esquema do atributo solicitado para que ele possa retornar os valores de atributo no formato apropriado nas estruturas ADSVALUE , contidas na estrutura ADS_SEARCH_COLUMN . No entanto, GetColumn pode ter êxito mesmo quando a definição de esquema não está disponível; nesse caso, o membro dwADsType da estrutura ADS_SEARCH_COLUMN retorna ADSTYPE_PROV_SPECIFIC e o valor é retornado em uma estrutura ADS_PROV_SPECIFIC . Ao processar os resultados de uma chamada GetColumn , você deve verificar dwADsType para garantir que os dados foram retornados no formato esperado.
Exemplos
ADS_SEARCH_COLUMN col;
/*.. Omit the set preference and execute*/
while( m_pSearch->GetNextRow( hSearch) != S_ADS_NOMORE_ROWS )
{
// Get the Name and display it in the list.
hr = m_pSearch->GetColumn( hSearch, pszAttr[0], &col );
if ( SUCCEEDED(hr) )
{
switch (col.dwADsType)
{
case ADSTYPE_CASE_IGNORE_STRING:
printf("%S\n", col.pADsValues->CaseIgnoreString);
break;
case ADSTYPE_PROV_SPECIFIC:
printf("%S\n", col.pADsValues->ProviderSpecific.lpValue);
break;
default:
printf("Unexpected ADsType: %d\n", col.dwADsType);
break;
}
{
m_pSearch->FreeColumn( &col );
}
}
}
m_pSearch->CloseSearchHandle( hSearch );
Requisitos
Cliente mínimo com suporte | Windows Vista |
Servidor mínimo com suporte | Windows Server 2008 |
Plataforma de Destino | Windows |
Cabeçalho | iads.h |
DLL | Activeds.dll; Adsldp.dll; Adsldpc.dll |