こんにちは(^^
タイトルの件ですが、VB6.0にて
下記のようなコードを組んでいます。
handle = FindWindow(vbNullString, "無題 - メモ帳")
If handle <> 0 Then
handle = FindWindowEx(handle, 0, "edit", vbNullString)
End If
hIMC = ImmGetContext(handle)
Call ImmSetOpenStatus(hIMC, True)
Dim result_Imm As Long
result_Imm = ImmSetCompositionString(hIMC, SCS_SETSTR, ByVal 0, 0,writeStr(0), UBound(writeStr) + 1)
Debug.Print result_Imm
result_Imm = ImmNotifyIME(hIMC, NI_COMPOSITIONSTR, CPS_CONVERT, 0)
Call ImmReleaseContext(handle, hIMC)
ImmGetContextの所で、
VBのフォームに貼り付けたテキストボックスを
指定するとうまくいくのですが、
他APを指定すると未変換文字列を表示してくれません。(全く表示無しです)
どなたか原因がおわかりでしたらご指導願えないでしょうか?
こちらから提示する情報が足りていない場合は仰ってください。m(__)m
よろしくお願いいたします。
VBだと、ImmGetContextは自アプリ内しか使えなかった気がします。
編集 削除すみません、嘘でした。
他アプリに対してImmGetContextは出来ないようです。
zさんご回答ありがとうございます。
ImmGetContextは、
他アプリのハンドルを指定することができない。
という認識でよろしいでしょうか?
趣旨とは少しずれますが、
そういった情報をどこから探してらっしゃるのか
参考にしている書籍、サイト等ありましたら
教えていただけないでしょうか?
よろしくお願いいたします。
以下の情報は参考にならないでしょうか?
(私自身は使った経験無し!)
http://www.users.gr.jp/ml/archive/viewer.aspx?name=vb&no=10035
基本的には、以下の手順でやってます。
1)MSDNを熟読
2)google
3)技術系ML、掲示板の過去ログ検索
2と3は順番が入れ替わるかも。