Функция WSCUnInstallNameSpace32 (ws2spi.h)

Функция WSCUnInstallNameSpace32 удаляет определенный поставщик 32-разрядного пространства имен.

Примечание Этот вызов является строго 32-разрядной версией WSCUnInstallNameSpace для использования на 64-разрядных платформах. Он предоставляется для предоставления 64-разрядным процессам доступа к 32-разрядным каталогам.

 

Синтаксис

INT WSCUnInstallNameSpace32(
  [in] LPGUID lpProviderId
);

Параметры

[in] lpProviderId

Указатель на глобальный уникальный идентификатор (GUID) для удаляемого поставщика пространства имен.

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

Если ошибка не возникает, WSCUnInstallNameSpace32 возвращает NO_ERROR (ноль). В противном случае он возвращает SOCKET_ERROR , если функция завершается сбоем, и необходимо получить соответствующий код ошибки с помощью функции WSAGetLastError .

Код ошибки Значение
WSAEFAULT
Параметр lpProviderId указывает на память, которая не находится в допустимой части адресного пространства пользователя.
WSAEINVAL
Указанный идентификатор поставщика пространства имен недопустим.
WSASYSCALLFAILURE
Системный вызов, который никогда не должен завершать ошибку, завершился сбоем.
WSA_NOT_ENOUGH_MEMORY
Недостаточно памяти. Эта ошибка возвращается при нехватке памяти для выделения новой записи каталога.

Комментарии

WSCUnInstallNameSpace32 — это строго 32-разрядная версия WSCUnInstallNameSpace. На 64-разрядном компьютере все вызовы, не относящиеся к 32-разрядным (например, все функции, которые не заканчиваются на "32"), работают в собственном 64-разрядном каталоге. Процессы, выполняемые на 64-разрядном компьютере, должны использовать определенные вызовы 32-разрядных функций для работы с строго 32-разрядным каталогом и сохранения совместимости. Определения и семантика конкретных 32-разрядных вызовов совпадают с собственными аналогами.

Функции конфигурации пространства имен не влияют на уже запущенные приложения. Недавно установленные поставщики пространства имен не будут видны приложениям, а также изменения в состоянии активации поставщика пространства имен. Приложения, запущенные после вызова WSCUnInstallNameSpace32 , будут распознавать изменения.

При успешном выполнении WSCUnInstallNameSpace32 попытается предупредить все заинтересованные приложения, зарегистрированные для уведомления об изменении, вызвав WSAProviderConfigChange.

Функция WSCUnInstallNameSpace32 может вызываться только пользователем, вошедшим в систему как член группы Администраторы. Если WSCUnInstallNameSpace32 вызывается пользователем, который не является членом группы администраторов, вызов функции завершится ошибкой и WSANO_RECOVERY возвращается в параметре lpErrno .

Для компьютеров под управлением Windows Vista или Windows Server 2008 эта функция также может завершиться ошибкой из-за контроля учетных записей пользователей (UAC). Если приложение, содержащее эту функцию, выполняется пользователем, вошедшего в систему как член группы администраторов, отличный от встроенного администратора, этот вызов завершится ошибкой, если приложение не было отмечено в файле манифеста с параметром requestedExecutionLevel , для которого задано значение requireAdministrator. Если в приложении в Windows Vista или Windows Server 2008 отсутствует этот файл манифеста, пользователь, вошедший в систему как член группы администраторов, отличный от встроенного администратора, должен выполнить приложение в расширенной оболочке в качестве встроенного администратора (администратора запуска от имени администратора), чтобы эта функция была успешно выполнена.

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

Требования

   
Минимальная версия клиента Windows Vista, Windows XP Professional x64 Edition [только классические приложения]
Минимальная версия сервера Windows Server 2008, Windows Server 2003 x64 Edition [только классические приложения]
Целевая платформа Windows
Header ws2spi.h
Библиотека Ws2_32.lib
DLL Ws2_32.dll

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

WSAProviderConfigChange

WSCDeinstallProvider32

WSCEnumProtocols32

WSCInstallNameSpace32

WSCUnInstallNameSpace