Kwalifikatory kontekstu Configuration Manager
Obiekty kontekstowe są używane w Configuration Manager do dostarczania dodatkowych informacji dostawcy programu SMS. Zazwyczaj kwalifikatory kontekstu są używane do nadania dostawcy programu SMS informacji kontekstowych, takich jak nazwa aplikacji. Kwalifikatorów kontekstu można używać podczas nawiązywania połączenia z dostawcą programu SMS i pojedynczymi obiektami dostawcy programu SMS.
Kod zarządzany
W przypadku korzystania z zarządzanych bibliotek dostawcy programu SMS do określania kwalifikatorów kontekstu jest używana właściwość ConnectionManagerBase.Context . Aby uzyskać więcej informacji, zobacz How to Add a Configuration Manager Context Qualifier by Using Managed Code (Jak dodać kwalifikator kontekstu Configuration Manager przy użyciu kodu zarządzanego).
VBScript
W przypadku korzystania z języka VBScript należy użyć zestawu interfejsu SWBemNamedValue , aby określić kwalifikatory kontekstu jako kolekcję nazwanych obiektów wartości. Aby uzyskać więcej informacji, zobacz How to Add a Configuration Manager Context Qualifier by Using WMI (Jak dodać kwalifikator kontekstu Configuration Manager przy użyciu usługi WMI).
Kwalifikatory kontekstu
Poniższa tabela zawiera kwalifikatory kontekstu (nazwane wartości), które są używane przez dostawcę programu SMS. Większość kwalifikatorów, takich jak SessionHandle
, jest używana tylko w określonych obszarach funkcjonalnych dostawcy programu SMS, ale LocaleID
, MachineName
i ApplicationName
jest używana przez aplikację.
Kwalifikator kontekstu | Opis |
---|---|
ApplicationName |
Identyfikuje aplikację, która wykonała wywołanie. |
ContextHandle |
Określa, gdzie dostawca programu SMS przechowywał kwalifikatory kontekstu buforowanego. |
InstanceCount |
Ogranicza liczbę wystąpień zwróconych z funkcji ExecQuery i CreateInstanceEnum. |
LimitToCollectionIDs |
Ogranicza wyniki zapytania zasobu do elementów członkowskich nazwanych kolekcji. |
LocaleID |
Identyfikuje stronę kodu do użycia. |
MachineName |
Określa, na którym komputerze jest uruchomiona aplikacja. |
QueryQualifiers |
Zwraca flagi bitowe SecurityVerbs podczas wykonywania zapytań względem zabezpieczonych obiektów. |
SessionHandle |
Identyfikuje kopię pliku kontroli lokacji aplikacji do Configuration Manager. |
ApplicationName
Kwalifikator ApplicationName
kontekstu jest wartością ciągu, która identyfikuje nazwę aplikacji, która wykonała wywołanie. Należy określić ApplicationName
dla aplikacji, ponieważ jest ona używana do inspekcji. Jeśli nie podasz nazwy aplikacji, zostanie użyta wartość Nieznany. Należy podać ApplicationName
wartość podczas wywoływania dowolnej metody komunikatu o stanie podniesienia, takiej jak SMS_StatusMessage::RaiseErrorStatusMsg, lub wywołanie zakończy się niepowodzeniem.
ContextHandle
Kwalifikator ContextHandle
kontekstu to wartość ciągu określająca, gdzie dostawca programu SMS przechowywał kwalifikatory kontekstu buforowanego. Zarządzany dostawca programu SMS zarządza transferem danych. W przypadku korzystania z języka VBScript można wykonać następujące kroki, aby zmniejszyć ilość danych przekazywanych przez sieć.
Utwórz zestaw wartości SWBemNamedValue .
Dodaj kwalifikatory do obiektu kontekstu. Aby uzyskać więcej informacji, zobacz How to Add a Configuration Manager Context Qualifier by Using WMI (Jak dodać kwalifikator kontekstu Configuration Manager przy użyciu usługi WMI).
Wywołaj metodę GetContextHandle , aby buforować kwalifikatory na serwerze. Dostawca programu SMS buforuje obiekt kontekstu przekazywany jako parametr ExecMethod podczas wywoływania funkcji GetContextHandle.
Usuń wszystkie kwalifikatory z obiektu kontekstu.
ContextHandle
Dodaj kwalifikator i wartość do obiektu kontekstu.Przekaż obiekt kontekstu we wszystkich wywołaniach do usługi IWbemServices.
Przed zamknięciem aplikacji należy wywołać metodę ClearContextHandle , aby usunąć buforowane kwalifikatory. Możesz utworzyć dowolną liczbę
ContextHandle
wartości, a każda z nich będzie dostarczać różne informacje dla aplikacji.
Uwaga
Po buforowania kwalifikatorów kontekstu można zastąpić buforowane wartości przez dodanie tych samych kwalifikatorów kontekstu, z różnymi wartościami, do obiektu kontekstu.
InstanceCount
Kwalifikator InstanceCount
kontekstu jest wartością całkowitą, która służy do ograniczania liczby wystąpień zwracanych z metod ExecQuery i CreateInstanceEnum . Ustawiono InstanceCount
maksymalną liczbę wystąpień, które mają zostać zwrócone z zapytania lub modułu wyliczającego. Na przykład ustawienie InstanceCount
wartości 10 zwraca maksymalnie 10 wystąpień.
LimitToCollectionIDs
Kwalifikator LimitToCollectionIDs
kontekstu to tablica ciągów zawierająca CollectionID
listę wartości. Obecnie można określić tylko jedną CollectionID
wartość. Ten kwalifikator służy do ograniczania wyników zapytania zasobu do elementów członkowskich nazwanej kolekcji. Zapytanie zasobu to zapytanie zawierające klasy pochodzące z SMS_Resource lub SMS_Group.
Użytkownik musi mieć uprawnienia do odczytu wystąpienia dla kolekcji, do której należy zasób. Należy użyć ograniczenia kolekcji, gdy użytkownik nie ma praw do odczytu klasy dla kolekcji; W przeciwnym razie nie są zwracane żadne dane. W przypadku programu SMS 2.0 z dodatkiem Service Pack 1 i nowszymi wersjami to ograniczenie dotyczy tylko klas pochodzących z SMS_Group.
Nie można użyć tego kwalifikatora podczas wykonywania zapytań dotyczących kolekcji.
Identyfikator ustawień regionalnych
Kwalifikator LocaleID
kontekstu jest wartością ciągu, która akceptuje wartość szesnastkową lub dziesiętną w postaci MS\x, gdzie x jest identyfikatorem ustawień regionalnych. Na przykład możesz wprowadzić wartość angielską LocaleID
jako ms\0x0409 lub ms\1033. Dostawca programu SMS akceptuje LocaleID
tylko wartości używające formatu firmy Microsoft. Listę identyfikatorów ustawień regionalnych locale IDs
przypisanych przez firmę Microsoft można znaleźć na stronie.
Jeśli potrzebujesz ustawień regionalnych dla użytkowników spoza STANÓW Zjednoczonych można pobrać z właściwości klasy WMILocaleID
serwera SMS_Identification.
MachineName
Kwalifikator MachineName
kontekstu to wartość ciągu określająca, na którym komputerze jest uruchomiona aplikacja. Należy określić MachineName
dla aplikacji, ponieważ jest ona używana do inspekcji. Jeśli nie podasz nazwy komputera, zostanie użyta wartość Nieznany. Należy podać wartość MachineName podczas wywoływania dowolnej metody komunikatu o stanie podniesienia, takiej jak SMS_StatusMessage::RaiseRawStatusMsg lub wywołanie zakończy się niepowodzeniem.
QueryQualifiers
Kwalifikator QueryQualifiers
kontekstu jest wartością logiczną, która jest używana do zwracania flag bitowych SecurityVerbs podczas wykonywania zapytań względem zabezpieczonych obiektów, takich jak SMS_Site lub SMS_Package. Należy pamiętać, że użycie polecenia QueryQualifiers
podczas wykonywania zapytań o niezabezpieczone obiekty generuje błąd. Domyślnie flagi SecurityVerbs nie są zwracane z zapytaniem. Musisz utworzyć ten kwalifikator i ustawić jego wartość na , jeśli chcesz, aby true
flagi zostały zwrócone. Nie tworzenie QueryQualifiers
jest takie samo jak ustawienie jego wartości na false
.
SessionHandle
Kwalifikator SessionHandle
kontekstu jest wartością ciągu zwracaną jako parametr out metody GetSessionHandle. Ciąg jest unikatowym identyfikatorem GUID, który identyfikuje kopię pliku kontroli lokacji aplikacji do Configuration Manager. Ten mechanizm służy do modyfikowania pliku kontroli lokacji i zmniejszania kolizji danych z innymi aplikacjami, które modyfikują plik kontroli lokacji w tym samym czasie. Jeśli nie podasz wartości, aplikacja modyfikuje globalną SessionHandle
kopię pliku kontroli lokacji, która nie ma ochrony przed zastępowaniem danych przez aplikacje.
Uwaga
Jeśli używasz zarządzanego dostawcy programu SMS, zarządzanie sesją plików kontroli lokacji jest zarządzane.
Zobacz też
Jak dodać kwalifikator kontekstu Configuration Manager przy użyciu kodu zarządzanego
Jak dodać kwalifikator kontekstu Configuration Manager przy użyciu usługi WMI
Podstawy dostawcy programu SMS