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


Функция ConnectServerWmi

Создает подключение через DCOM к пространству имен WMI на указанном компьютере.

Примечание

Этот интерфейс API предназначен только для внутреннего использования. Он не предназначен для использования из кода разработчика.

Синтаксис

HRESULT ConnectServerWmi (
   [in] BSTR               strNetworkResource,
   [in] BSTR               strUser,
   [in] BSTR               strPassword,
   [in] BSTR               strLocale,
   [in] long               lSecurityFlags,
   [in] BSTR               strAuthority,
   [in] IWbemContext*      pCtx,
   [out] IWbemServices**   ppNamespace,
   [in] DWORD              impLevel,
   [in] DWORD              authLevel
);

Параметры

strNetworkResource
[in] Указатель на допустимый BSTR объект , содержащий путь к объекту правильного пространства имен WMI. Дополнительные сведения см. в разделе Примечания .

strUser
[in] Указатель на допустимый BSTR объект , содержащий имя пользователя. Значение null указывает текущий контекст безопасности. Если пользователь находится в домене, отличном от текущего, strUser может также содержать домен и имя пользователя, разделенные обратной косой чертой. strUser также может быть в формате имени участника-пользователя (UPN), например userName@domainName. Дополнительные сведения см. в разделе Примечания .

strPassword
[in] Указатель на допустимый BSTR объект , содержащий пароль. Указывает null текущий контекст безопасности. Пустая строка ("") указывает на допустимый пароль нулевой длины.

strLocale
[in] Указатель на допустимый BSTR , указывающий правильный языковой стандарт для получения информации. Для идентификаторов языковых стандартов Майкрософт формат строки — "MS_xxx", где xxx — строка в шестнадцатеричной форме, указывающая идентификатор языкового стандарта (LCID). Если указан недопустимый языковой стандарт, метод возвращает WBEM_E_INVALID_PARAMETER , за исключением Windows 7, где используется языковой стандарт сервера по умолчанию. Если значение равно null1, используется текущий языковой стандарт.

lSecurityFlags
[in] Флаги для передачи в ConnectServerWmi метод . Значение, равное нулю (0) для этого параметра, приводит к тому, что ConnectServerWmi вызов возвращается только после установки соединения с сервером. Это может привести к тому, что приложение перестает отвечать на запросы, если сервер не работает. Другие допустимые значения:

Константа Значение Описание
CONNECT_REPOSITORY_ONLY 0x40 Зарезервировано для внутреннего использования. Не используйте.
WBEM_FLAG_CONNECT_USE_MAX_WAIT 0x80 ConnectServerWmi возвращается через две минуты или меньше.

strAuthority
[in] Доменное имя пользователя. Может иметь следующие значения.

Значение Описание
пустой Используется проверка подлинности NTLM, а также используется домен NTLM текущего пользователя. Если strUser указывает домен (рекомендуемое расположение), он не должен указываться здесь. Функция возвращает значение WBEM_E_INVALID_PARAMETER , если указать домен в обоих параметрах.
Kerberos:имя участника Используется проверка подлинности Kerberos, и этот параметр содержит имя участника Kerberos.
NTLMDOMAIN:доменное имя Используется проверка подлинности NT LAN Manager, и этот параметр содержит доменное имя NTLM.

pCtx
[in] Как правило, этот параметр имеет значение null. В противном случае это указатель на объект IWbemContext , необходимый одному или нескольким поставщикам динамических классов.

ppNamespace
[out] При возврате функции получает указатель на объект IWbemServices , привязанный к указанному пространству имен. Для него задано значение , указывающего на null , когда возникает ошибка.

impLevel
[in] Уровень олицетворения.

authLevel
[in] Уровень авторизации.

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

Следующие значения, возвращаемые этой функцией, определяются в файле заголовка WbemCli.h , или их можно определить как константы в коде:

Константа Значение Описание
WBEM_E_FAILED 0x80041001 Произошел общий сбой.
WBEM_E_INVALID_PARAMETER 0x80041008 Недействительный параметр.
WBEM_E_OUT_OF_MEMORY 0x80041006 Недостаточно памяти для выполнения операции.
WBEM_S_NO_ERROR 0 Вызов функции выполнен успешно.

Комментарии

Эта функция заключает в оболочку вызов метода IWbemLocator::ConnectServer .

Для локального доступа к пространству strNetworkResource имен по умолчанию может быть простой путь к объекту: "root\default" или "\.\root\default". Для доступа к пространству имен по умолчанию на удаленном компьютере с помощью сети, совместимой с COM или Корпорацией Майкрософт, укажите имя компьютера: "\myserver\root\default". Имя компьютера также может быть DNS-именем или IP-адресом. Функция ConnectServerWmi также может подключаться к компьютерам под управлением IPv6, используя IPv6-адрес.

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

Требования

Платформы: см. раздел Требования к системе.

Заголовка: WMINet_Utils.idl

версии платформа .NET Framework: доступно с версии 4.7.2.

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