C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■94575 / 1階層)  別アプリに文字列を送信していますがIMEがONだと文字化け
□投稿者/ 魔界の仮面弁士 (2700回)-(2020/04/21(Tue) 22:31:07)
No94574 (Tom さん) に返信
> System.Windows.Forms.SendKeys.SendWait
> で文字列を送信しました。
> 別アプリのIMEモードが半角モードなら問題なく動作するのですが、
> 全角モードだと"123"を送信すると"123"と全角化されてしまいます。

全角の "123" を送り込む場合はさておき、
半角だと厳しそうですね。

無理矢理 "123{F8}^{M}" を送出してみましたが、アプリによってはうまくいかず。


別案としては、Codeer.Friendly.Windows.NativeStandardControls を Nuget して、
NativeEdit クラスの EmulateChangeText メソッドか SetWindowText メソッドで送り込むとか。


> SendMessageを使用した送信も試したのですが、
> こちらは"1"は半角のままでしたが、
> 全角文字をおくると文字化けを起こします。

WM_SETTEXT メッセージや EM_REPLACESEL メッセージのことだとすれば、API 宣言が間違っていて、
ANSI 版 / Wide 版の呼び分けに失敗しているではないでしょうか。
DllImports の宣言と、実際の呼び出し部はどうなっていますか?
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←別アプリに文字列を送信していますがIMEがONだと文字化け /Tom →Re[2]: 別アプリに文字列を送信していますがIMEがONだと.. /Tom
→Re[2]: 別アプリに文字列を送信していますがIMEがONだと.. /kumakuma
 
上記関連ツリー

別アプリに文字列を送信していますがIMEがONだと文字化け / Tom (20/04/21(Tue) 21:14) #94574
別アプリに文字列を送信していますがIMEがONだと文字化け / 魔界の仮面弁士 (20/04/21(Tue) 22:31) #94575 ←Now
  ├ Re[2]: 別アプリに文字列を送信していますがIMEがONだと.. / Tom (20/04/22(Wed) 12:17) #94579
  └ Re[2]: 別アプリに文字列を送信していますがIMEがONだと.. / kumakuma (20/04/22(Wed) 06:34) #94577
    └ Re[3]: 別アプリに文字列を送信していますがIMEがONだと.. / Tom (20/04/22(Wed) 12:23) #94580
      └ Re[4]: 別アプリに文字列を送信していますがIMEがONだと.. / Hongliang (20/04/22(Wed) 12:34) #94581
        └ Re[5]: 別アプリに文字列を送信していますがIMEがONだと.. / Tom (20/04/23(Thu) 11:08) #94585 解決済み
          └ Re[6]: 別アプリに文字列を送信していますがIMEがONだと.. / bwin (20/05/21(Thu) 14:50) #94815

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信