Função WNetEnumResourceA (winnetwk.h)
A função WNetEnumResource continua uma enumeração de recursos de rede que foi iniciada por uma chamada para a função WNetOpenEnum .
Sintaxe
DWORD WNetEnumResourceA(
[in] HANDLE hEnum,
[in, out] LPDWORD lpcCount,
[out] LPVOID lpBuffer,
[in, out] LPDWORD lpBufferSize
);
Parâmetros
[in] hEnum
Identificador que identifica uma instância de enumeração. Esse identificador deve ser retornado pela função WNetOpenEnum .
[in, out] lpcCount
Ponteiro para uma variável que especifica o número de entradas solicitadas. Se o número solicitado for –1, a função retornará o máximo de entradas possível.
Se a função for bem-sucedida, no retorno, a variável apontada por esse parâmetro conterá o número de entradas realmente lidas.
[out] lpBuffer
Ponteiro para o buffer que recebe os resultados da enumeração. Os resultados são retornados como uma matriz de estruturas NETRESOURCE . Observe que o buffer alocado deve ser grande o suficiente para manter as estruturas, além das cadeias de caracteres às quais seus membros apontam. Para obter mais informações, consulte a seção Comentários a seguir.
O buffer é válido até a próxima chamada usando o identificador especificado pelo parâmetro hEnum . A ordem das estruturas NETRESOURCE na matriz não é previsível.
[in, out] lpBufferSize
Ponteiro para uma variável que especifica o tamanho do parâmetro lpBuffer , em bytes. Se o buffer for muito pequeno para receber até mesmo uma entrada, esse parâmetro receberá o tamanho necessário do buffer.
Valor retornado
Se a função for bem-sucedida, o valor retornado será um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
A enumeração foi bem-sucedida e o buffer contém os dados solicitados. O aplicativo de chamada pode continuar a chamar WNetEnumResource para concluir a enumeração. |
|
Não há mais entradas. O conteúdo do buffer é indefinido. |
Se a função falhar, o valor retornado será um código de erro do sistema, como um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
Mais entradas estão disponíveis com chamadas subsequentes. Para obter mais informações, consulte a seção Comentários a seguir. |
|
O identificador especificado pelo parâmetro hEnum não é válido. |
|
A rede não está disponível. (Essa condição é testada antes que hEnum seja testado quanto à validade.) |
|
Ocorreu um erro específico da rede. Para obter uma descrição do erro, chame a função WNetGetLastError . |
Comentários
A função WNetEnumResource não enumera usuários conectados a um compartilhamento; você pode chamar a função NetConnectionEnum para realizar essa tarefa. Para enumerar compartilhamentos ocultos, chame a função NetShareEnum .
Um aplicativo não pode definir o parâmetro lpBuffer como NULL e recuperar o tamanho do buffer necessário do parâmetro lpBufferSize . Em vez disso, o aplicativo deve alocar um buffer de um tamanho razoável — 16 quilobytes é típico — e usar o valor de lpBufferSize para detecção de erros.
Exemplos
Para obter um exemplo de código que ilustra uma função definida pelo aplicativo que enumera todos os recursos em uma rede, consulte Enumerando recursos de rede.
Observação
O cabeçalho winnetwk.h define WNetEnumResource como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [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 | winnetwk.h |
Biblioteca | Mpr.lib |
DLL | Mpr.dll |