Функция NPGetResourceParent (npapi.h)

Извлекает родительский объект указанного сетевого ресурса в иерархии обзора. Эта функция обычно вызывается для ресурсов, возвращенных тем же поставщиком из предыдущих вызовов NPEnumResource или NPGetResourceInformation.

Синтаксис

DWORD NPGetResourceParent(
  [in]      LPNETRESOURCEW lpNetResource,
  [out]     LPVOID         lpBuffer,
  [in, out] LPDWORD        lpBufferSize
);

Параметры

[in] lpNetResource

Указатель на сетевой ресурс, родительское имя которого является обязательным. NETRESOURCE можно было получить из предыдущего вызова NPEnumResource или NPGetResourceInformation или создать вызывающий объект.

Поле lpRemoteName указывает удаленное имя сетевого ресурса, родитель которого является обязательным.

Поле lpProvider указывает поставщика для вызова. Это должно быть предоставлено.

Поле dwType заполняется, если вызывающая программа знает свое значение. В противном случае ему присваивается значение NULL.

Все остальные поля в NETRESOURCE игнорируются и не инициализируются.

[out] lpBuffer

Указатель на буфер для получения результата, который представляет собой единую структуру NETRESOURCE , представляющую родительский ресурс. Возвращаются поля lpRemoteName, lpProvider, dwType, dwDisplayType и dwUsage ; для всех остальных полей задано значение NULL.

Выходные данные lpRemoteName должны иметь тот же формат, что и возвращаемый из перечисления NPEnumResource, чтобы вызывающий объект смог выполнить сравнение строк с учетом регистра, чтобы определить, совпадает ли родительский ресурс с тем, который возвращает NPEnumResource. Если входной ресурс синтаксически имеет родительский элемент, поставщик может вернуть его, не определяя, существует ли на самом деле входной ресурс или его родительский ресурс. Если у ресурса нет родительского элемента обзора в сети, lpRemoteName возвращается как NULL.

Бит RESOURCEUSAGE_CONNECTABLE в возвращаемом поле dwUsage не обязательно указывает на то, что ресурс в настоящее время может быть подключен, а только на то, что ресурс доступен в сети.

[in, out] lpBufferSize

Указатель на расположение, указывающее размер (в байтах) буфера, на который указывает параметр lpBuffer . Если буфер слишком мал для результата, функция помещает требуемый размер буфера в это место и возвращает ошибку WN_MORE_DATA.

Возвращаемое значение

Если функция выполнена успешно, она должна вернуть WN_SUCCESS. В противном случае он должен вернуть код ошибки, который может быть одним из следующих.

Код возврата Описание
WN_MORE_DATA
Входной буфер слишком мал.
WN_BAD_NETNAME
Этому поставщику не принадлежит ресурс, указанный в lpNetResource (или ресурс является синтаксически недопустимым).
WN_BAD_VALUE
Параметр dwUsage или dwType недопустим, либо указано неправильное сочетание параметров (например, lpRemoteName является синтаксически недопустимым для dwType).
WN_NOT_AUTHENTICATED
Вызывающий объект не прошел проверку подлинности в сети.
WN_ACCESS_DENIED
Вызывающий объект прошел проверку подлинности в сети, но не имеет достаточных разрешений.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header npapi.h