Поделиться через


Функция NetUseEnum (lmuse.h)

Функция NetUseEnum перечисляет все текущие подключения между локальным компьютером и ресурсами на удаленных серверах.

Вы также можете использовать функции WNetOpenEnum и WNetEnumResource для перечисления сетевых ресурсов или подключений.

Синтаксис

NET_API_STATUS NET_API_FUNCTION NetUseEnum(
  [in]      LMSTR   UncServerName,
  [in]      DWORD   LevelFlags,
  [out]     LPBYTE  *BufPtr,
  [in]      DWORD   PreferedMaximumSize,
  [out]     LPDWORD EntriesRead,
  [out]     LPDWORD TotalEntries,
  [in, out] LPDWORD ResumeHandle
);

Параметры

[in] UncServerName

UNC-имя компьютера, на котором выполняется эта функция. Если этот параметр имеет значение NULL, то используется локальный компьютер. Если указанный параметр UncServerName является удаленным компьютером, удаленный компьютер должен поддерживать удаленные вызовы RPC с использованием устаревшего механизма протокола удаленного доступа.

Если определены _WIN32_WINNT или FORCE_UNICODE , это строка Юникода.

[in] LevelFlags

Уровень сведений о запрашиваемых данных. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
0
Указывает имя локального устройства и имя общей папки удаленного ресурса. Параметр BufPtr указывает на массив USE_INFO_0 структур.
1
Указывает сведения о подключении между локальным устройством и общим ресурсом, включая состояние и тип подключения. Параметр BufPtr указывает на массив USE_INFO_1 структур.
2
Указывает сведения о подключении между локальным устройством и общим ресурсом. Сведения включают состояние подключения, тип подключения, имя пользователя и доменное имя. Параметр BufPtr указывает на массив USE_INFO_2 структур.

[out] BufPtr

Указатель на буфер, который получает информационные структуры. Формат этих данных зависит от значения параметра Level . Этот буфер выделяется системой и должен быть освобожден с помощью функции NetApiBufferFree , если информация больше не нужна. Обратите внимание, что буфер необходимо освободить, даже если функция завершается сбоем с ERROR_MORE_DATA.

[in] PreferedMaximumSize

Предпочтительная максимальная длина возвращаемых данных (в байтах). Если указано MAX_PREFERRED_LENGTH , функция выделяет объем памяти, необходимый для данных. Если в этом параметре указано другое значение, оно может ограничить количество байтов, возвращаемых функцией. Если размер буфера недостаточен для хранения всех записей, функция возвращает ERROR_MORE_DATA. Дополнительные сведения см. в разделах Буферы функций управления сетью и Длина буфера функции управления сетью.

[out] EntriesRead

Указатель на значение, которое получает количество фактически перечисляемых элементов.

[out] TotalEntries

Указатель на значение, которое получает общее количество записей, которые можно было бы перечислить из текущей позиции резюме. Обратите внимание, что приложения должны рассматривать это значение только как подсказку.

[in, out] ResumeHandle

Указатель на значение, содержащее дескриптор возобновления, используемый для продолжения поиска. Дескриптор должен быть равен нулю при первом вызове и оставить без изменений для последующих вызовов. Если resumeHandle имеет значение NULL, дескриптор возобновления не сохраняется.

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

Если функция выполняется успешно, возвращаемое значение будет NERR_Success.

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

Код возврата Описание
ERROR_INVALID_PARAMETER
В функцию передан недопустимый параметр. Эта ошибка возвращается, если в параметрах BufPtr или entriesread передается указатель NULL.
ERROR_MORE_DATA
Необходимо вернуть дополнительные данные. Эта ошибка возвращается, если размер буфера недостаточен для хранения всех записей.
ERROR_NOT_SUPPORTED
Запрос не поддерживается. Эта ошибка возвращается, если параметр UncServerName не имеет значения NULL и удаленный сервер не поддерживает удаленные вызовы RPC с использованием устаревшего механизма протокола удаленного доступа.
Другое
Используйте FormatMessage , чтобы получить строку сообщения для возвращенной ошибки.

Комментарии

Для вызова функции NetUseEnum не требуется специальное членство в группах. Эта функция не может быть выполнена на удаленном сервере, за исключением случаев совместимости нижнего уровня с использованием устаревшего протокола удаленного доступа.

Чтобы получить сведения об одном сетевом подключении, можно вызвать функцию NetUseGetInfo .

Эта функция применяется только к клиенту server Message Block (LAN Manager Workstation). Функция NetUseEnum не поддерживает общие папки распределенной файловой системы (DFS). Для перечисления общих папок с помощью другого поставщика сети (например, WebDAV или общей папки DFS) используйте функции WNetOpenEnum, WNetEnumResource и WNetCloseEnum .

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header lmuse.h (включая Lm.h, Lmcons.h)
Библиотека Netapi32.lib
DLL Netapi32.dll

См. также раздел

NetUseGetInfo

Функции управления сетью

Общие сведения об управлении сетью

USE_INFO_0

USE_INFO_1

USE_INFO_2

Использование функций

WNetCloseEnum

WNetEnumResource

WNetOpenUm