IConditionFactory::Resolve method (structuredquery.h)
Performs a variety of transformations on a condition tree, including the following: resolves conditions with relative date/time expressions to conditions with absolute date/time (as a VT_FILETIME); turns other recognized named entities into condition trees with actual values; simplifies condition trees; replaces virtual or compound properties with OR trees of other properties; removes condition trees resulting from queries with property keywords that had no condition applied.
Syntax
HRESULT Resolve(
[in] ICondition *pc,
[in] STRUCTURED_QUERY_RESOLVE_OPTION sqro,
[in] const SYSTEMTIME *pstReferenceTime,
[out, retval] ICondition **ppcResolved
);
Parameters
[in] pc
Type: ICondition*
A pointer to an ICondition object to be resolved.
[in] sqro
Type: STRUCTURED_QUERY_RESOLVE_OPTION
Specifies zero or more of the STRUCTURED_QUERY_RESOLVE_OPTION flags. For Windows 7 and later, the SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES flag is automatically added to sqro.
[in] pstReferenceTime
Type: SYSTEMTIME const*
A pointer to a SYSTEMTIME value to use as the reference date and time. A null pointer can be passed if sqro is set to SQRO_DONT_RESOLVE_DATETIME.
[out, retval] ppcResolved
Type: ICondition**
Receives a pointer to the new ICondition in which all time fields have been resolved to have values of type VT_FILETIME. This new condition tree is the resolved version of pc.
Return value
Type: HRESULT
If this method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
Remarks
In a condition tree produced by the Parse method and returned by GetQuery, the leaves pair up properties with restrictions on these properties, and result in a condition tree that is partially finished. The IConditionFactory::Resolve method finishes such a condition tree by a process known as resolution. The input condition tree is not modified in any way. The output condition tree may share parts of the input condition that contained no leaf nodes with unresolved date/time values.
The StructuredQuerySample demonstrates how to read lines from the console, parse them using the system schema, and display the resulting condition trees.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows XP with SP2, Windows Vista [desktop apps only] |
Minimum supported server | Windows Server 2003 with SP1 [desktop apps only] |
Target Platform | Windows |
Header | structuredquery.h |
Redistributable | Windows Desktop Search (WDS) 3.0 |
See also
Reference