ITfFnSearchCandidateProvider interface (ctffunc.h)

Enables an integrated search experience in an Input Method Editor (IME).


The ITfFnSearchCandidateProvider interface inherits from the IUnknown interface. ITfFnSearchCandidateProvider also has these types of members:


The ITfFnSearchCandidateProvider interface has these methods.


Gets a list of conversion candidates for a given string without generating any IME-related messages or events.

Provides a text Service or IME with history data when a candidate is chosen by the user.


Implement the ITfFnSearchCandidateProvider interface in your Input Method Editor (IME) to enable an integrated search experience. Implementing this interface enables searches with meaningful results to begin before IME input has been completed, by providing a set of possible IME conversion candidates for a given input string. Apps can use this interface to obtain IME conversions for a string, so the ITfFnSearchCandidateProvider interface, along with ITfFnGetLinguisticAlternates, provides a TSF-based replacement for the ImmGetConversionList function. Typically IMEs implement either ITfFnGetLinguisticAlternates or ITfFnSearchCandidateProvider (or neither).

Call GetFunctionProvider with the CLSID of a text service to get an ITfFunctionProvider instance. Use the following call to the ITfFunctionProvider::GetFunction method to get the ITfFnSearchCandidateProvider interface pointer.

ITfFunctionProvider::GetFunction(GUID_NULL, IID_ITfFnSearchCandidateProvider, &pSearchCandidate)


Minimum supported client Windows 8 [desktop apps only]
Minimum supported server Windows Server 2012 [desktop apps only]
Target Platform Windows
Header ctffunc.h

See also