Freigeben über


Configuration Manager Kontextqualifizierer

Kontextobjekte werden in Configuration Manager verwendet, um dem SMS-Anbieter zusätzliche Informationen bereitzustellen. In der Regel verwenden Sie Kontextqualifizierer, um dem SMS-Anbieter Kontextinformationen wie den Namen Ihrer Anwendung zu geben. Sie können Kontextqualifizierer verwenden, wenn Sie eine Verbindung mit dem SMS-Anbieter und mit einzelnen SMS-Anbieterobjekten herstellen.

Verwalteter Code

Wenn Sie die verwalteten SMS-Anbieterbibliotheken verwenden, verwenden Sie die ConnectionManagerBase.Context-Eigenschaft , um Kontextqualifizierer anzugeben. Weitere Informationen finden Sie unter Hinzufügen eines Configuration Manager Kontextqualifizierers mithilfe von verwaltetem Code.

VBScript

Bei Verwendung von VBScript verwenden Sie die SWBemNamedValue-Schnittstelle , um Kontextqualifizierer als Auflistung benannter Wertobjekte anzugeben. Weitere Informationen finden Sie unter Hinzufügen eines Configuration Manager Kontextqualifizierers mithilfe von WMI.

Kontextqualifizierer

Die folgende Tabelle enthält die Kontextqualifizierer (benannte Werte), die vom SMS-Anbieter verwendet werden. Die meisten Qualifizierer wie SessionHandlewerden nur mit bestimmten Funktionsbereichen des SMS-Anbieters verwendet, aber LocaleID, MachineNameund ApplicationName sind für die Verwendung Ihrer Anwendung vorgesehen.

Kontextqualifizierer Beschreibung
ApplicationName Identifiziert die Anwendung, die den Aufruf durchgeführt hat.
ContextHandle Gibt an, wo der SMS-Anbieter Ihre zwischengespeicherten Kontextqualifizierer gespeichert hat.
InstanceCount Begrenzt die Anzahl der von ExecQuery und CreateInstanceEnum zurückgegebenen Instanzen.
LimitToCollectionIDs Beschränkt die Ergebnisse einer Ressourcenabfrage auf die Elemente der benannten Auflistungen.
LocaleID Identifiziert die zu verwendende Codepage.
MachineName Gibt an, auf welchem Computer die Anwendung ausgeführt wird.
QueryQualifiers Gibt die SecurityVerbs-Bitflags zurück, wenn Sie Abfragen für geschützte Objekte ausführen.
SessionHandle Identifiziert die Kopie Ihrer Anwendung der Websitesteuerungsdatei, die Configuration Manager.

ApplicationName

Der ApplicationName Kontextqualifizierer ist ein Zeichenfolgenwert, der den Namen der Anwendung identifiziert, die den Aufruf ausgeführt hat. Sie sollten für Ihre Anwendung angeben ApplicationName , da sie für die Überwachung verwendet wird. Wenn Sie den Namen Ihrer Anwendung nicht angeben, wird der Wert Unbekannt verwendet. Sie müssen den ApplicationName Wert angeben, wenn Sie eine der Methoden zum Auslösen von Statusmeldungen aufrufen, z. B. SMS_StatusMessage::RaiseErrorStatusMsg, da sonst der Aufruf fehlschlägt.

ContextHandle

Der ContextHandle Kontextqualifizierer ist ein Zeichenfolgenwert, der angibt, wo der SMS-Anbieter Ihre zwischengespeicherten Kontextqualifizierer gespeichert hat. Der verwaltete SMS-Anbieter verwaltet die Datenübertragung. Wenn Sie VBScript verwenden, können Sie die folgenden Schritte ausführen, um die Datenmenge zu reduzieren, die über das Netzwerk übergeben wird.

  1. Erstellen Sie einen SWBemNamedValue-Wertsatz .

  2. Fügen Sie dem Kontextobjekt Ihre Qualifizierer hinzu. Weitere Informationen finden Sie unter Hinzufügen eines Configuration Manager Kontextqualifizierers mithilfe von WMI.

  3. Rufen Sie die GetContextHandle-Methode auf, um Ihre Qualifizierer auf dem Server zwischenzuspeichern. Der SMS-Anbieter speichert das Kontextobjekt zwischen, das Sie als Parameter von ExecMethod übergeben, wenn Sie GetContextHandle aufrufen.

  4. Entfernen Sie alle Qualifizierer aus Ihrem Kontextobjekt.

  5. Fügen Sie dem Kontextobjekt den ContextHandle Qualifizierer und den Wert hinzu.

  6. Übergeben Sie das Kontextobjekt bei allen Aufrufen von IWbemServices.

    Sie müssen die ClearContextHandle-Methode aufrufen, um Ihre zwischengespeicherten Qualifizierer zu entfernen, bevor Sie Ihre Anwendung beenden. Sie können beliebig viele ContextHandle Werte erstellen, wobei jeder unterschiedliche Informationen für Ihre Anwendung bereitstellt.

Hinweis

Nachdem Sie Ihre Kontextqualifizierer zwischengespeichert haben, können Sie ihre zwischengespeicherten Werte überschreiben, indem Sie dem Kontextobjekt dieselben Kontextqualifizierer mit unterschiedlichen Werten hinzufügen.

InstanceCount

Der InstanceCount Kontextqualifizierer ist ein ganzzahliger Wert, der verwendet wird, um die Anzahl der Von den Methoden ExecQuery und CreateInstanceEnum zurückgegebenen Instanzen zu begrenzen. Sie legen InstanceCount die maximale Anzahl von Instanzen fest, die von der Abfrage oder dem Enumerator zurückgegeben werden sollen. Wenn Sie beispielsweise auf 10 festlegen InstanceCount , werden höchstens 10 Instanzen zurückgegeben.

LimitToCollectionIDs

Der LimitToCollectionIDs Kontextqualifizierer ist ein Zeichenfolgenarray, das eine Liste von CollectionID Werten enthält. Derzeit können Sie nur einen CollectionID Wert angeben. Sie verwenden diesen Qualifizierer, um die Ergebnisse einer Ressourcenabfrage auf die Elemente der benannten Sammlung zu beschränken. Eine Ressourcenabfrage ist eine Abfrage, die Von SMS_Resource oder SMS_Group abgeleitete Klassen enthält.

Der Benutzer muss über Leseressourcenberechtigungen für die Sammlung verfügen, zu der die Ressource gehört. Sie müssen die Sammlungsbeschränkung verwenden, wenn der Benutzer nicht über Ressourcenberechtigungen zum Lesen von Klassen für Sammlungen verfügt. Andernfalls werden keine Daten zurückgegeben. Für SMS 2.0 mit Service Pack 1 und höheren Versionen gilt diese Einschränkung nur für Klassen, die von SMS_Group abgeleitet wurden.

Sie können diesen Qualifizierer nicht beim Abfragen von Sammlungen verwenden.

LocaleID

Der LocaleID Kontextqualifizierer ist ein Zeichenfolgenwert, der entweder einen Hexadezimalwert oder einen Dezimalwert im Format MS\x akzeptiert, wobei x die Gebietsschema-ID ist. Beispielsweise können Sie den englischen LocaleID Wert als ms\0x0409 oder ms\1033 eingeben. Der SMS-Anbieter akzeptiert LocaleID nur Werte, die das Microsoft Format verwenden. Eine Liste der locale IDs von Microsoft zugewiesenen Gebietsschema-IDs finden Sie.

Wenn Sie das Gebietsschema für Nicht-USA benötigen -Installationen können Sie sie über die Eigenschaft SMS_Identification Server-WMI-KlasseLocaleID abrufen.

Machinename

Der MachineName Kontextqualifizierer ist ein Zeichenfolgenwert, der angibt, auf welchem Computer die Anwendung ausgeführt wird. Sie sollten für Ihre Anwendung angeben MachineName , da sie für die Überwachung verwendet wird. Wenn Sie den Computernamen nicht angeben, wird der Wert Unbekannt verwendet. Sie müssen den MachineName-Wert angeben, wenn Sie eine der Methoden zum Auslösen von Statusmeldungen aufrufen, z. B. SMS_StatusMessage::RaiseRawStatusMsg, andernfalls schlägt der Aufruf fehl.

Abfragequalifizierer

Der QueryQualifiers Kontextqualifizierer ist ein boolescher Wert, der verwendet wird, um die SecurityVerbs-Bitflags zurückzugeben, wenn Sie Abfragen für geschützte Objekte wie SMS_Site oder SMS_Package ausführen. Beachten Sie, dass die Verwendung von QueryQualifiers beim Abfragen von unsicheren Objekten einen Fehler generiert. Standardmäßig werden SecurityVerbs-Flags nicht mit der Abfrage zurückgegeben. Sie müssen diesen Qualifizierer erstellen und seinen Wert auf true festlegen, wenn die Flags zurückgegeben werden sollen. Das Nicht-Erstellen QueryQualifiers entspricht dem Festlegen des Werts auf false.

SessionHandle

Der SessionHandle Kontextqualifizierer ist ein Zeichenfolgenwert, der als out-Parameter der GetSessionHandle-Methode zurückgegeben wird. Die Zeichenfolge ist eine eindeutige GUID, die die Kopie Ihrer Anwendung der Websitesteuerungsdatei identifiziert, die Configuration Manager. Sie sollten diesen Mechanismus verwenden, um die Standortsteuerungsdatei zu ändern und Datenkonflikte mit anderen Anwendungen zu reduzieren, die gleichzeitig die Standortsteuerungsdatei ändern. Wenn Sie keinen Wert angeben SessionHandle , ändert Ihre Anwendung die globale Kopie der Standortsteuerungsdatei, die keinen Schutz vor dem Überschreiben von Daten durch Anwendungen bietet.

Hinweis

Wenn Sie den verwalteten SMS-Anbieter verwenden, wird die Sitzungsverwaltung der Standortsteuerungsdatei für Sie verwaltet.

Siehe auch

Hinzufügen eines Configuration Manager Kontextqualifizierers mithilfe von verwaltetem Code
Hinzufügen eines Configuration Manager Kontextqualifizierers mithilfe von WMI
Grundlagen des SMS-Anbieters