Compartilhar via


Função WNetGetResourceInformationA (winnetwk.h)

Quando fornecida com um caminho remoto para um recurso de rede, a função WNetGetResourceInformation identifica o provedor de rede que possui o recurso e obtém informações sobre o tipo do recurso. A função normalmente é usada em conjunto com a função WNetGetResourceParent para analisar e interpretar um caminho de rede digitado por um usuário.

Sintaxe

DWORD WNetGetResourceInformationA(
  [in]      LPNETRESOURCEA lpNetResource,
  [out]     LPVOID         lpBuffer,
  [in, out] LPDWORD        lpcbBuffer,
  [out]     LPSTR          *lplpSystem
);

Parâmetros

[in] lpNetResource

Ponteiro para uma estrutura NETRESOURCE que especifica o recurso de rede para o qual as informações são necessárias.

O lpRemoteName membro da estrutura deve especificar o nome do caminho remoto do recurso, normalmente um digitado por um usuário. Os membros lpProvider e dwType também devem ser preenchidos se conhecidos, pois essa operação pode ser intensiva em memória, especialmente se você não especificar o membro dwType . Se você não souber os valores desses membros, defina-os para NULL. Todos os outros membros da estrutura NETRESOURCE são ignorados.

[out] lpBuffer

Ponteiro para o buffer para receber o resultado. No retorno bem-sucedido, a primeira parte do buffer é uma estrutura NETRESOURCE que representa essa parte do caminho de recurso de entrada que é acessada por meio das funções WNet, em vez de por meio de funções do sistema específicas para o tipo de recurso de entrada. (O restante do buffer contém as cadeias de caracteres de comprimento variável às quais os membros do NETRESOURCE ponto de estrutura.)

Por exemplo, se o caminho do recurso remoto de entrada for \server\share\dir1\dir2, a saída NETRESOURCE estrutura conterá informações sobre o recurso \server\share. A parte \dir1\dir2 do caminho é acessada por meio das funções de gerenciamento de arquivos . Os lpRemoteName, lpProvider, dwType, dwDisplayTypee dwUsage membros de NETRESOURCE são retornados, com todos os outros membros definidos como NULL .

O membro lpRemoteName é retornado na mesma sintaxe que a retornada de uma enumeração pela função WNetEnumResource. Isso permite que o chamador execute uma comparação de cadeia de caracteres para determinar se o recurso passado para WNetGetResourceInformation é o mesmo que o recurso retornado por uma chamada separada para WNetEnumResource.

[in, out] lpcbBuffer

Ponteiro para um local que, na entrada, especifica o tamanho do buffer lpBuffer, em bytes. O buffer alocado deve ser grande o suficiente para manter a estrutura NETRESOURCE, além das cadeias de caracteres às quais seus membros apontam. Se o buffer for muito pequeno para o resultado, esse local receberá o tamanho do buffer necessário e a função retornará ERROR_MORE_DATA.

[out] lplpSystem

Se a função retornar com êxito, esse parâmetro apontará para uma cadeia de caracteres no buffer de saída que especifica a parte do recurso que é acessada por meio de funções do sistema. (Isso se aplica apenas a funções específicas ao tipo de recurso em vez das funções WNet.)

Por exemplo, se o nome do recurso remoto de entrada for \server\share\dir1\dir2, o lpRemoteName membro da saída NETRESOURCE estrutura apontará para \server\share. Além disso, o parâmetro lplpSystem aponta para \dir1\dir2. Ambas as cadeias de caracteres são armazenadas no buffer apontado pelo parâmetro lpBuffer.

Valor de retorno

Se a função for bem-sucedida, o valor retornado será NO_ERROR.

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
ERROR_BAD_NET_NAME
A entrada lpRemoteName membro não é um recurso de rede existente para nenhuma rede.
ERROR_BAD_DEV_TYPE
O membro de dwType de entrada não corresponde ao tipo de recurso especificado pelo membro lpRemoteName.
ERROR_EXTENDED_ERROR
Ocorreu um erro específico da rede. Chame WNetGetLastError para obter uma descrição do erro.
ERROR_MORE_DATA
O buffer apontado pelo parâmetro lpBuffer é muito pequeno.
ERROR_NO_NETWORK
A rede não está disponível.

Observações

Nota

O cabeçalho winnetwk.h define WNetGetResourceInformation 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. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho winnetwk.h
biblioteca Mpr.lib
de DLL Mpr.dll

Consulte também

WNetGetNetworkInformation

WNetGetProviderName

WNetGetResourceParent

WNetGetUniversalName

Visão geral WNet (Rede windows)

funções de rede do Windows