これは参った!
MSDN Library 2006年8月版の"Platform Builder for Microsoft Windows CE 5.0"に含まれるCOMPOSITIONFORM構造体の説明を読んでいて、記述の不備でかなりの時間を取られました。
ここには、dwStyleメンバーの値として、CFS_DEFAULTしか書かれていませんでした。
しかし、この値を指定しても意図した位置に未確定文字列を移動できません。
実際には、ドキュメントに記述されていないCFS_POINTを指定する必要がありました。
実際に書いてみたコード例 §
ZeroMemory(&compform,sizeof(compform));
compform.dwStyle = CFS_POINT;
compform.ptCurrentPos.x = rectChr.left;
compform.ptCurrentPos.y = rectChr.top;
hIMC = ImmGetContext(hWnd);
ImmSetCompositionWindow( hIMC, &compform );
ImmReleaseContext(hWnd, hIMC);
感想 §
IMM方面のドキュメントは足りない感がありますが、ましてWindows Mobileという感じなのでしょう。