Функция NetServerTransportAddEx (lmserver.h)
Функция NetServerTransportAddEx привязывает указанный сервер к транспортному протоколу. Эта расширенная функция позволяет вызывающему приложению указывать уровни информации SERVER_TRANSPORT_INFO_0, SERVER_TRANSPORT_INFO_1, SERVER_TRANSPORT_INFO_2 или SERVER_TRANSPORT_INFO_3 .
Синтаксис
NET_API_STATUS NET_API_FUNCTION NetServerTransportAddEx(
[in] LMSTR servername,
[in] DWORD level,
[in] LPBYTE bufptr
);
Параметры
[in] servername
Указатель на строку, указывающую имя удаленного сервера, на котором выполняется функция. Если этот параметр имеет значение NULL, используется локальный компьютер.
[in] level
Задает значение, указывающее уровень информации данных. Этот параметр может принимать одно из указанных ниже значений.
Значение | Значение |
---|---|
|
Указывает сведения о транспортном протоколе, включая имя, адрес и расположение в сети. Параметр bufptr указывает на SERVER_TRANSPORT_INFO_0 структуру. |
|
Указывает сведения о транспортном протоколе, включая имя, адрес, сетевое расположение и домен. Параметр bufptr указывает на структуру SERVER_TRANSPORT_INFO_1 . |
|
Указывает те же сведения, что и уровень 1, с добавлением элемента svti2_flags . Параметр bufptr указывает на SERVER_TRANSPORT_INFO_2 структуру. |
|
Указывает те же сведения, что и уровень 2, с добавлением учетных данных. Параметр bufptr указывает на структуру SERVER_TRANSPORT_INFO_3 . |
[in] bufptr
Указатель на буфер, содержащий данные. Формат этих данных зависит от значения параметра level .
Дополнительные сведения см. в разделе Буферы функций управления сетью.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение будет NERR_Success.
Если функция завершается ошибкой, возвращаемое значение может быть одним из следующих кодов ошибок.
Код возврата | Описание |
---|---|
|
Пользователь не имеет доступа к запрошенной информации. |
|
В сети существует повторяющееся имя. |
|
Не удалось найти доменное имя в сети. |
|
Недопустимое значение, указанное для параметра level . |
|
Недопустимый параметр.
Эта ошибка возвращается, если имя транспорта или член адреса транспорта в структуре SERVER_TRANSPORT_INFO_0, SERVER_TRANSPORT_INFO_1, SERVER_TRANSPORT_INFO_2 или SERVER_TRANSPORT_INFO_3 , на которую указывает параметр bufptr , имеет значение NULL. Эта ошибка также возвращается, если элемент длины адреса транспорта в структуре SERVER_TRANSPORT_INFO_0, SERVER_TRANSPORT_INFO_1, SERVER_TRANSPORT_INFO_2 или SERVER_TRANSPORT_INFO_3 , на который указывает параметр bufptr , равен нулю или больше MAX_PATH (определяется в файле заголовка Windef.h ). Эта ошибка также возвращается, если элемент флагов SERVER_TRANSPORT_INFO_2 или структура SERVER_TRANSPORT_INFO_3 , на которую указывает параметр bufptr , содержит недопустимое значение. Эта ошибка также возвращается для других недопустимых параметров. |
|
Недостаточно памяти. |
Комментарии
Только члены локальной группы Администраторы или Операторы сервера могут успешно выполнять функцию NetServerTransportAddEx .
При добавлении транспортного протокола на сервер с помощью вызова функции NetServerTransportAddEx подключение не останется после перезагрузки или перезапуска сервера.
Функция NetServerComputerNameAdd — это служебная функция. Он сочетает в себе функции NetServerTransportEnum и NetServerTransportAddEx , что позволяет указать эмулированное имя сервера.
В Windows Server 2008 и Windows Vista с пакетом обновления 1 (SP1) каждое имя, зарегистрированное на удаленном файловом сервере Windows (SRV), обозначается как имя с заданной областью или как имя без области действия. После этого каждый общий ресурс, добавляемый в систему, будет либо присоединен ко всем именам без области действия, либо к одному имени с заданной областью. Приложения, которые хотят использовать функции области, отвечают как за регистрацию нового имени в качестве конечной точки с заданной областью, так и за создание общих папок с соответствующим область. Таким образом, устаревшие функции управления сетью и управления общими сетевыми ресурсами никак не затрагиваются, так как они продолжают регистрировать общие папки и имена как имена без области действия.
Конечная точка с заданной областью создается путем вызова функции NetServerTransportAddEx с параметром level , равным 2, а параметр bufptr указывает на SERVER_TRANSPORT_INFO_2 структуру с SVTI2_SCOPED_NAME битовое значение, заданное в элементе svti2_flags . Конечная точка с заданной областью также создается путем вызова функции NetServerTransportAddEx с параметром level , равным 3, а параметр bufptr указывает на SERVER_TRANSPORT_INFO_3 структуру с SVTI2_SCOPED_NAME битовое значение, заданное в элементе svti3_flags .
Если для транспорта задано битовое значение SVTI2_SCOPED_NAME , общие папки можно добавить с соответствующим именем сервера ( shi503_servername членом структуры SHARE_INFO_503 ) с помощью функции NetShareAdd . Если нет транспорта, зарегистрированного с SVTI2_SCOPED_NAME битовое значение и имя, указанное в элементе shi503_servername , добавление общей папки с заданной областью не будет выполнено.
Функция NetShareAdd используется для добавления общей папки с заданной областью на удаленный сервер, указанный в параметре servername . Удаленный сервер, указанный в shi503_servernameчлене SHARE_INFO_503 , переданного в параметре bufptr , должен быть привязан к транспортному протоколу с помощью функции NetServerTransportAddEx в качестве конечной точки с заданной областью. Флаг SVTI2_SCOPED_NAME должен быть указан в элементе shi503_servernameструктуры SERVER_TRANSPORT_INFO_2 или SERVER_TRANSPORT_INFO_3 для транспортного протокола. Функция NetShareDelEx используется для удаления общего ресурса с заданной областью. Функции NetShareGetInfo и NetShareSetInfo используются для получения и задания сведений об общем ресурсе с заданной областью.
Конечные точки с заданной областью обычно используются пространством имен кластера.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | lmserver.h (включая Lm.h) |
Библиотека | Netapi32.lib |
DLL | Netapi32.dll |