属性範囲取得
複数値属性は、ほぼ任意の数の値を持つことができます。 多くの場合、クエリによって取得される値の範囲を制限することは有益であり、必要な場合もあります。
範囲取得では、単一のクエリで制限された数の属性値を要求します。 要求される値の数は、サーバーでサポートされている値の最大数以下である必要があります. クエリがサーバーに接続する必要がある回数を減らすには、要求される値の数を可能な限りこの最大数に近づける必要があります。 アプリケーションがすべてのWindowsサーバーで正しく動作するようにするには、最大数の1000を使用する必要があります。
プロパティクエリの範囲指定子には、次の形式が必要です。
range=<low range>-<high range>
ここで、"<低範囲>"は取得する最初のプロパティ値の0から始まるインデックスであり、"<高範囲>"は取得する最後のプロパティ値の0から始まるインデックスです。 最初のエントリを指定するには、"<low range>" に 0 を使用します。 ワイルドカード文字(*)を"<高範囲>"に使用して、残りのすべてのエントリを指定できます。
次の表に、範囲指定子の例を示します。
例 | 説明 |
---|---|
range=0-* | すべてのプロパティ値を取得します。 これは、サーバーによって課される制限に従います。 |
range=0-500 | 1番目から501番目までの値を取得します。 |
range=2-3 | 3番目と4番目の値を取得します。 |
range=501-* | 502番目と残りのすべての値を取得します。 これは、サーバーによって課される制限に従います。 |
プロパティ値の範囲を取得するには、いくつかの異なる方法があります。 Iad。GetInfoExメソッドは、オートメーション言語またはC ++. Iadのいずれかで使用できます。GetInfoExメソッドは、範囲の取得を実行するために推奨される方法です。 Iadの使用方法の詳細については、 「」 を参照してください。範囲の取得にGetInfoExを使用する場合は、 「範囲の取得にIad :: GetInfoExを使用する」 を参照してください。
オートメーション言語を使用する場合は、ActiveX Directoryオブジェクト (ADO) を使用して、プロパティ値の範囲を取得できます。 範囲の取得にADOを使用する方法の詳細については、 「範囲の取得にADOを使用する」 を参照してください。
C++を使用する場合は、IDirectorySearchインターフェイスとIDirectoryObjectインターフェイスを使用して、プロパティ値の範囲を取得できます。 範囲の取得にIDirectorySearchとIDirectoryObjectを使用する方法の詳細については、 「範囲の取得にIDirectorySearchとIDirectoryObjectを使用する」 を参照してください。 この種類の取得は、スコープの種類がBase (ADS_SCOPE_BASE) のクエリで実行する必要があります。