Método IShellFolder::EnumObjects (shobjidl_core.h)
Permite que um cliente determine o conteúdo de uma pasta criando um objeto de enumeração de identificador de item e retornando sua interface IEnumIDList . Os métodos compatíveis com essa interface podem ser usados para enumerar o conteúdo da pasta.
Sintaxe
HRESULT EnumObjects(
[in] HWND hwnd,
[in] SHCONTF grfFlags,
[out] IEnumIDList **ppenumIDList
);
Parâmetros
[in] hwnd
Digite: HWND
Se a entrada do usuário for necessária para executar a enumeração, esse identificador de janela deverá ser usado pelo objeto de enumeração como a janela pai para obter a entrada do usuário. Um exemplo seria uma caixa de diálogo para solicitar uma senha ou solicitar que o usuário insira um CD ou disquete. Se hwndOwner estiver definido como NULL, o enumerador não deverá postar nenhuma mensagem e, se a entrada do usuário for necessária, ela deverá falhar silenciosamente.
[in] grfFlags
Tipo: SHCONTF
Sinalizadores que indicam quais itens incluir na enumeração. Para obter uma lista de valores possíveis, consulte o tipo enumerado SHCONTF .
[out] ppenumIDList
Tipo: IEnumIDList**
O endereço que recebe um ponteiro para a interface IEnumIDList do objeto de enumeração criado por esse método. Se ocorrer um erro ou nenhum subobjeto adequado for encontrado, ppenumIDList será definido como NULL.
Valor retornado
Tipo: HRESULT
Retorna S_OK
se tiver êxito ou um valor de erro caso contrário. Algumas implementações também podem retornar S_FALSE
, indicando que não há filhos correspondentes aos grfFlags que foram passados . Se S_FALSE
for retornado, ppenumIDList será definido como NULL
.
Comentários
Se o método retornar S_OK, ppenumIDList receberá um ponteiro para um enumerador. Nesse caso, o aplicativo de chamada deve liberar o objeto IEnumIDList retornado chamando seu método Release .
Se o método retornar S_FALSE, a pasta não conterá subobjetos adequados e o ponteiro especificado em ppenumIDList será definido como NULL.
Se o método falhar, um valor de erro será retornado e o ponteiro especificado em ppenumIDList será definido como NULL.
Se a pasta não contiver subobjetos adequados, o método IShellFolder::EnumObjects terá permissão para definir *ppenumIDList como NULL e retornar S_FALSE ou definir *ppenumIDList como um enumerador que não produz objetos e retornar S_OK. Os aplicativos de chamada devem ser preparados para ambos os casos de êxito.
Requisitos
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | shobjidl_core.h (inclua Shobjidl.h) |
DLL | Shell32.dll (versão 4.0 ou posterior) |