I have a threaded application that must set the Caret on/off and to a specific location. Only the main thread seems able to control the caret - the worker thread cannot.

The only work-around I can find is to SendMessage a "move/set caret" user message from the worker thread to the main thread to have the caret work properly.

Is this normal, or am I missing something about the caret functions?

Many thanks,
Tony