ConnectServerWmi-Funktion
Erstellt über DCOM eine Verbindung mit einem WMI-Namespace auf einem angegebenen Computer.
Hinweis
Diese API ist ausschließlich für die interne Verwendung vorgesehen. Sie ist nicht für die Verwendung im Entwicklercode vorgesehen.
Syntax
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
);
Parameter
strNetworkResource
[in] Zeiger auf ein gültiges BSTR
-Element, das den Objektpfad des korrekten WMI-Namespace enthält. Weitere Informationen finden Sie im Abschnitt Bemerkungen.
strUser
[in] Ein Zeiger auf ein gültiges BSTR
-Element, das den Benutzernamen enthält. Ein null
-Wert gibt den aktuellen Sicherheitskontext an. Wenn der Benutzer bzw. die Benutzerin nicht der aktuellen Domäne angehört, kann strUser
auch die Domäne und den Benutzernamen (getrennt durch einen umgekehrten Schrägstrich) enthalten. strUser
kann auch im UPN-Format (User Principal Name, Dienstprinzipalname) vorliegen – also beispielsweise als userName@domainName
. Weitere Informationen finden Sie im Abschnitt Bemerkungen.
strPassword
[in] Ein Zeiger auf ein gültiges BSTR
-Element, das das Kennwort enthält. null
gibt den aktuellen Sicherheitskontext an. Eine leere Zeichenfolge („“) gibt ein gültiges Kennwort der Länge Null an.
strLocale
[in] Ein Zeiger auf ein gültiges BSTR
-Element, das das korrekte Gebietsschema für den Abruf von Informationen angibt. Bei Microsoft-Gebietsschemabezeichnern hat die Zeichenfolge das Format „MS_xxx“, wobei xxx eine Zeichenfolge in hexadezimaler Form ist, die den Gebietsschemabezeichner (Locale Identifier, LCID) angibt. Bei Angabe eines ungültigen Gebietsschemas gibt die Methode WBEM_E_INVALID_PARAMETER
zurück (außer unter Windows 7; hier wird stattdessen das Standardgebietsschema des Servers verwendet). Bei „null1“ wird das aktuelle Gebietsschema verwendet.
lSecurityFlags
[in] Flags, die an die ConnectServerWmi
-Methode übergeben werden sollen. Ein Nullwert (0) für diesen Parameter führt dazu, dass der Aufruf von ConnectServerWmi
erst abgeschlossen wird, nachdem eine Verbindung mit dem Server hergestellt wurde. Dies kann dazu führen, dass eine Anwendung für einen unbestimmten Zeitraum nicht reagiert, wenn der Server nicht verfügbar ist. Weitere gültige Werte:
Konstante | Wert | Beschreibung |
---|---|---|
CONNECT_REPOSITORY_ONLY |
0x40 | Für die interne Verwendung reserviert. Darf nicht verwendet werden. |
WBEM_FLAG_CONNECT_USE_MAX_WAIT |
0x80 | ConnectServerWmi wird in maximal zwei Minuten abgeschlossen. |
strAuthority
[in] Der Domänenname des Benutzers bzw. der Benutzerin. Die folgenden Werte sind möglich:
Wert | Beschreibung |
---|---|
leer | Die NTLM-Authentifizierung und die NTLM-Domäne des aktuellen Benutzers bzw. der aktuellen Benutzerin werden verwendet. Wenn die Domäne per strUser angegeben wird (empfohlen), darf sie hier nicht angegeben werden. Die Funktion gibt WBEM_E_INVALID_PARAMETER zurück, wenn Sie die Domäne in beiden Parametern angeben. |
Kerberos:Prinzipalname | Die Kerberos-Authentifizierung wird verwendet, und dieser Parameter enthält einen Kerberos-Prinzipalnamen. |
NTLMDOMAIN:Domänenname | Die NT-LAN-Manager-Authentifizierung wird verwendet, und dieser Parameter enthält einen NTLM-Domänennamen. |
pCtx
[in] Dieser Parameter ist in der Regel null
. Andernfalls handelt es sich um einen Zeiger auf ein IWbemContext-Objekt, das von mindestens einem Anbieter dynamischer Klassen benötigt wird.
ppNamespace
[out] Nach Abschluss der Funktion wird ein Zeiger auf ein IWbemServices-Objekt empfangen, das an den angegebenen Namespace gebunden ist. Bei einem Fehler wird auf null
gezeigt.
impLevel
[in] Die Identitätswechselebene.
authLevel
[in] Die Autorisierungsstufe.
Rückgabewert
Die folgenden von dieser Funktion zurückgegebenen Werte werden in der Headerdatei WbemCli.h definiert oder können als Konstanten im Code definiert werden:
Konstante | Wert | Beschreibung |
---|---|---|
WBEM_E_FAILED |
0x80041001 | Es ist ein allgemeiner Fehler aufgetreten. |
WBEM_E_INVALID_PARAMETER |
0x80041008 | Ein Parameter ist nicht gültig. |
WBEM_E_OUT_OF_MEMORY |
0x80041006 | Es ist nicht genügend Arbeitsspeicher verfügbar, um den Vorgang abzuschließen. |
WBEM_S_NO_ERROR |
0 | Der Funktionsaufruf war erfolgreich. |
Bemerkungen
Diese Funktion umschließt einen Aufruf der IWbemLocator::ConnectServer-Methode.
Für den lokalen Zugriff auf den Standardnamespace kann strNetworkResource
ein einfacher Objektpfad sein: „root\default“ oder „\.\root\default“. Wenn Sie über COM oder über ein mit Microsoft kompatibles Netzwerk auf den Standardnamespace auf einem Remotecomputer zugreifen möchten, schließen Sie den Computernamen „\myserver\root\default“ ein. Der Computername kann auch ein DNS-Name oder eine IP-Adresse sein. Die ConnectServerWmi
-Funktion kann auch über eine IPv6-Adresse eine Verbindung mit Computern herstellen, auf denen IPv6 aktiv ist.
strUser
darf keine leere Zeichenfolge sein. Wenn die Domäne in strAuthority
angegeben ist, darf sie nicht auch in strUser
enthalten sein. Andernfalls gibt die Funktion WBEM_E_INVALID_PARAMETER
zurück.
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Header: WMINet_Utils.idl
.NET Framework-Versionen: Seit Version 4.7.2 verfügbar