次の方法で共有


IConditionFactory::Resolve メソッド (structuredquery.h)

条件ツリーに対してさまざまな変換を実行します。たとえば、相対的な日付/時刻式を持つ条件を、絶対日付/時刻を持つ条件 (VT_FILETIMEとして) に解決します。は、他の認識された名前付きエンティティを実際の値を持つ条件ツリーに変換します。条件ツリーを簡略化します。仮想プロパティまたは複合プロパティを他のプロパティの OR ツリーに置き換えます。は、条件が適用されていないプロパティ キーワードを含むクエリの結果として発生する条件ツリーを削除します。

構文

HRESULT Resolve(
  [in]          ICondition                      *pc,
  [in]          STRUCTURED_QUERY_RESOLVE_OPTION sqro,
  [in]          const SYSTEMTIME                *pstReferenceTime,
  [out, retval] ICondition                      **ppcResolved
);

パラメーター

[in] pc

種類: ICondition*

解決する ICondition オブジェクトへのポインター。

[in] sqro

種類: STRUCTURED_QUERY_RESOLVE_OPTION

0 個以上の STRUCTURED_QUERY_RESOLVE_OPTION フラグを指定します。 Windows 7 以降では、SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES フラグが sqro に自動的に追加されます。

[in] pstReferenceTime

型: SYSTEMTIME const*

参照日時として使用する SYSTEMTIME 値へのポインター。 sqro が SQRO_DONT_RESOLVE_DATETIME に設定されている場合は、null ポインターを渡すことができます。

[out, retval] ppcResolved

種類: ICondition**

すべての時間フィールドがVT_FILETIME型の値を持つよう解決された新しい ICondition へのポインターを受け取ります。 この新しい条件ツリーは、解決された バージョンの pc です

戻り値

種類: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

注釈

Parse メソッドによって生成され、GetQuery によって返される条件ツリーでは、 は、これらのプロパティに制限があるプロパティをペアにし、その結果、条件ツリーが部分的に終了します。 IConditionFactory::Resolve メソッドは、解決と呼ばれるプロセスによってこのような条件ツリーを終了します。 入力条件ツリーは、いかなる方法でも変更されません。 出力条件ツリーは、未解決の日付/時刻値を持つリーフ ノードを含まない入力条件の一部を共有できます。

メモ リーフ ノードを解決すると、多くの場合、非リーフ ノードが生成されます。
 
たとえば、構造化クエリでは相対日付/時刻式がサポートされています。これは、参照時刻に適用されるまで未解決のままです。 セマンティック型 System.StructuredQueryType.DateTime を持つリーフ ノードでは、値はVT_FILETIMEまたはVT_LPWSTRのいずれかになります。 VT_FILETIMEは絶対日付/時刻であるため、既に解決されています。 VT_LPWSTRは、相対日付/時刻式の文字列表現です。 指定した参照時刻は現地時刻にする必要がありますが、結果のクエリ式の解決時刻は協定世界時 (UTC) になります。

StructuredQuerySample では、コンソールから行を読み取り、システム スキーマを使用してそれらを解析し、結果の条件ツリーを表示する方法を示します。

要件

要件
サポートされている最小のクライアント WINDOWS XP と SP2、Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 SP1 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー structuredquery.h
再頒布可能パッケージ Windows デスクトップ検索 (WDS) 3.0

こちらもご覧ください

CONDITION_OPERATION

CONDITION_TYPE

ICondition

ICondition2

IConditionFactory

IConditionFactory2

参照