Configuration Manager コンテキスト修飾子

コンテキスト オブジェクトは、SMS プロバイダーに追加情報を提供するために、Configuration Managerで使用されます。 通常、コンテキスト修飾子を使用して、アプリケーションの名前などの SMS プロバイダーコンテキスト情報を指定します。 SMS プロバイダーと個々の SMS プロバイダー オブジェクトに接続する場合は、コンテキスト修飾子を使用できます。

マネージ コード

マネージド SMS プロバイダー ライブラリを使用する場合は、 ConnectionManagerBase.Context プロパティを使用してコンテキスト修飾子を指定します。 詳細については、「マネージド コードを使用してConfiguration Manager コンテキスト修飾子を追加する方法」を参照してください。

VBScript

VBScript を使用する場合は、 SWBemNamedValue インターフェイス セットを使用して、名前付き値オブジェクトのコレクションとしてコンテキスト修飾子を指定します。 詳細については、「WMI を使用してConfiguration Managerコンテキスト修飾子を追加する方法」を参照してください。

コンテキスト修飾子

次の表には、SMS プロバイダーによって使用されるコンテキスト修飾子 (名前付き値) が含まれています。 のようなSessionHandleほとんどの修飾子は、SMS プロバイダーの特定の機能領域でのみ使用されます。ただしLocaleIDMachineNameApplicationName、 はアプリケーションで使用されます。

コンテキスト修飾子 説明
ApplicationName 呼び出しを行ったアプリケーションを識別します。
ContextHandle SMS プロバイダーがキャッシュされたコンテキスト修飾子を格納している場所を識別します。
InstanceCount ExecQueryCreateInstanceEnum から返されるインスタンスの数を制限します。
LimitToCollectionIDs リソース クエリの結果を、名前付きコレクションのメンバーに制限します。
LocaleID 使用するコード ページを識別します。
MachineName アプリケーションを実行しているコンピューターを識別します。
QueryQualifiers セキュリティで保護されたオブジェクトに対してクエリを実行するときに SecurityVerbs ビット フラグを返します。
SessionHandle アプリケーションのサイト コントロール ファイルのコピーをConfiguration Managerに識別します。

ApplicationName

ApplicationNameコンテキスト修飾子は、呼び出しを行ったアプリケーションの名前を識別する文字列値です。 アプリケーションは監査に使用されるため、アプリケーションに対してを指定 ApplicationName する必要があります。 アプリケーションの名前を指定しない場合は、値 Unknown が使用されます。 SMS_StatusMessage::RaiseErrorStatusMsg などのレイズ ステータス メッセージ メソッドのいずれかを呼び出す場合、または呼び出しが失敗する場合は、値を指定ApplicationNameする必要があります。

ContextHandle

ContextHandleコンテキスト修飾子は、SMS プロバイダーがキャッシュされたコンテキスト修飾子を格納している場所を識別する文字列値です。 マネージド SMS プロバイダーは、データ転送を管理します。 VBScript を使用する場合は、次の手順を使用して、ネットワーク経由で渡されるデータの量を減らすことができます。

  1. SWBemNamedValue 値セットを作成します。

  2. 修飾子をコンテキスト オブジェクトに追加します。 詳細については、「WMI を使用してConfiguration Managerコンテキスト修飾子を追加する方法」を参照してください。

  3. GetContextHandle メソッドを呼び出して、修飾子をサーバーにキャッシュします。 SMS プロバイダーは、GetContextHandle を呼び出すときに ExecMethod のパラメーターとして渡すコンテキスト オブジェクトをキャッシュします。

  4. コンテキスト オブジェクトからすべての修飾子を削除します。

  5. ContextHandle修飾子と値をコンテキスト オブジェクトに追加します。

  6. IWbemServices のすべての呼び出しでコンテキスト オブジェクトを渡します。

    アプリケーションを終了する前に 、ClearContextHandle メソッドを呼び出して、キャッシュされた修飾子を削除する必要があります。 必要な数 ContextHandle の値を作成し、それぞれにアプリケーションのさまざまな情報を提供できます。

注:

コンテキスト修飾子をキャッシュした後は、同じコンテキスト修飾子を異なる値でコンテキスト オブジェクトに追加することで、キャッシュされた値をオーバーライドできます。

InstanceCount

InstanceCountコンテキスト修飾子は、ExecQuery メソッドと CreateInstanceEnum メソッドから返されるインスタンスの数を制限するために使用される整数値です。 クエリまたは列挙子から返されるインスタンスの最大数に等しく設定 InstanceCount します。 たとえば、10 に設定 InstanceCount すると、最大で 10 個のインスタンスが返されます。

LimitToCollectionIDs

LimitToCollectionIDsコンテキスト修飾子は、値のCollectionIDリストを含む文字列配列です。 現在、指定できる値は 1 つだけ CollectionID です。 この修飾子を使用して、リソース クエリの結果を名前付きコレクションのメンバーに制限します。 リソース クエリは、 SMS_ResourceまたはSMS_Group から派生したクラスを含むクエリ です

ユーザーには、リソースが属するコレクションに対するインスタンス読み取りリソースのアクセス許可が必要です。 ユーザーがコレクションのクラス読み取りリソース権限を持っていない場合は、コレクションの制限を使用する必要があります。それ以外の場合、データは返されません。 Service Pack 1 以降の SMS 2.0 の場合、この制限はSMS_Groupから派生したクラスにのみ適用されます。

コレクションのクエリを実行するときに、この修飾子を使用することはできません。

Localeid

LocaleIDコンテキスト修飾子は、MS\x 形式の 16 進値または 10 進値を受け取る文字列値です。ここで、x はロケール ID です。 たとえば、英語 LocaleID の値を ms\0x0409 または ms\1033 として入力できます。 SMS プロバイダーは、LocaleIDMicrosoft形式を使用する値のみを受け入れます。 のlocale IDs一覧は、Microsoftによって割り当てられたロケール ID にあります

米国以外のロケールが必要な場合。インストールでは、 SMS_Identification サーバー WMI クラスLocaleID プロパティから取得できます。

Machinename

MachineNameコンテキスト修飾子は、アプリケーションを実行しているコンピューターを識別する文字列値です。 アプリケーションは監査に使用されるため、アプリケーションに対してを指定 MachineName する必要があります。 コンピューター名を指定しない場合は、Unknown の値が使用されます。 SMS_StatusMessage::RaiseRawStatusMsg などのレイズ ステータス メッセージ メソッドのいずれかを呼び出す場合、または呼び出しが失敗する場合は、MachineName 値を指定する必要があります。

QueryQualifiers

QueryQualifiersコンテキスト修飾子は、セキュリティで保護されたオブジェクト (SMS_SiteSMS_Packageなど) に対してクエリを実行するときに SecurityVerbs ビット フラグを返すために使用されるブール値です。 セキュリティで保護されていないオブジェクトを照会するときに を使用 QueryQualifiers すると、エラーが発生することに注意してください。 既定では、SecurityVerbs フラグはクエリと共に返されません。 フラグを返す場合は、この修飾子を作成し、その値を に true 設定する必要があります。 作成 QueryQualifiers しないのは、その値を に設定する falseのと同じです。

SessionHandle

SessionHandleコンテキスト修飾子は、GetSessionHandle メソッドの out パラメーターとして返される文字列値です。 文字列は、Configuration Managerするサイト コントロール ファイルのアプリケーションのコピーを識別する一意の GUID です。 このメカニズムを使用して、サイト コントロール ファイルを変更し、サイト コントロール ファイルを同時に変更している他のアプリケーションとのデータ競合を減らす必要があります。 値を SessionHandle 指定しない場合、アプリケーションはサイト コントロール ファイルのグローバル コピーを変更します。このファイルは、互いのデータを上書きするアプリケーションからの保護がありません。

注:

マネージド SMS プロバイダーを使用している場合は、サイトコントロール ファイル セッション管理が管理されます。

関連項目

マネージド コードを使用してConfiguration Manager コンテキスト修飾子を追加する方法
WMI を使用してConfiguration Manager コンテキスト修飾子を追加する方法
SMS プロバイダーの基礎