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

わんくま同盟

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

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

■96414 / 4階層)  SendMessageの使用法
□投稿者/ 初心者 (5回)-(2020/11/21(Sat) 11:39:39)
> WinSpy++ であれば、Class タブの Class Name を確認してみてください。
> それが "Edit" か "Static" になっていれば、WM_GETTEXT で取得できると思います。
[wxWindow]です、これってEditですか?

> ダウンロードにアカウント登録が必要なんですね。
すいません。記載しておけば良かったですね。(要求されると躊躇しますよね)

> そのアプリのどの画面のどの項目の値を取得したいのかが分からないと、
> 協力者が解析できないかもしれません。
そうでした。まずは、以下のスナップショットをアップし、環境だけでも準備させて頂きます。
目的は、CAD側がコマンド受付状態(「: 」コロンの状態)であることを判断して、SendMessageで
CADにコマンドを送信(たとえば、線分を引く「LINE」など)します。
V13とV20の比較をアップします。
赤枠と黄枠は同じ内容で同期されているので、どちらから入力しても構いません。プロント履歴の方が
取得しやすかったのでこちらハンドルを使用しています。
V13の時のClassNameは、RICHEDIT50W   ←あ、こちらにはEDITがあります
V20は、wxWindow に代わっています。  ←こちらは無い、でもコマンドに入力した"LINE"はどこにあるの?

V13のCADの  
トップ画面  https://1drv.ms/b/s!AmLWi97VvBs0hRUbYrvB_RQ5SQ2Z?e=HEN8Nv
WinSpy++   https://1drv.ms/b/s!AmLWi97VvBs0hROIUTXWLjtLmXKL?e=8sHHa1
V20の  
CADのトップ画面 https://1drv.ms/b/s!AmLWi97VvBs0hRe4JDXNIJl2UMUh?e=1JhAG3
WinSpy++     https://1drv.ms/b/s!AmLWi97VvBs0hRKfLZSFntGS7duL?e=a7baVU
全体のウインドウ一覧  https://1drv.ms/b/s!AmLWi97VvBs0hRiNNjUXZR4H1mgA?e=hjpKmf
※OneDriveの共有はこれでいいのか?

> Windows 9x 系が駆逐された今となっては、SendMessageA などの ANSI 系関数を呼び出すメリットは殆どありません。
> 基本的には、SendMessageW などの Unicode バージョンを前提にするか、Auto 指定にすることをお奨めします。
> 本来 IntPtr 型にすべき場所が、Int32 型になっているようですね。
> 正しい呼び出し方ではありませんが、x86 ビルドでコンパイルすれば、Int32 型のままでも一応大丈夫です。
> あるいは AnyCPU ビルドでも、32bit 優先ビルドなら OK。
> たとえば、Excel VBA のユーザーフォームに対して貼ったテキストボックスは
> ウィンドウレス コントロールです。こうしたコントロールは HWND を持たないため(フォームにはある)、
> SendMessage で操作できません。
勉強になります。

> オーバーロードを使わずに別名関数として API を宣言している点も、.NET っぽくないですし。
前回提示して頂いたSendMessageですが同じもの2行ありエラーにならないのが解せなかったのですが、
そうゆうことだったんですか。使い道がピンときませんが、
例えば、引数にOptionalがありますが、そんなケース時に、再定義して使用するのでしょうか??
私は、市販のVisualBasic2013パーフェクトマスターを参考にしてます。
これには、IntPtrや、StringBuilderなんで言葉は出てきませんが、どの参考書を利用されているのでしょうか?
新しいことが多すぎて(コードにても記述が全然違う、OneDriveも使用したことがないですし、でも今回の
提案で便利かもしれません。以前は宅ファイルを活用してました。
改めて一寸、頭を整理しないといけない状況です。

編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←Re[3]: SendMessageの使用法 /魔界の仮面弁士 →Re[5]: SendMessageの使用法 /Azulean
 
上記関連ツリー

SendMessageの使用法 / 初心者 (20/11/19(Thu) 18:50) #96397
Re[1]: SendMessageの使用法 / Hongliang (20/11/19(Thu) 20:03) #96400
Re[1]: SendMessageの使用法 / 魔界の仮面弁士 (20/11/19(Thu) 20:09) #96403
  └ Re[2]: SendMessageの使用法 / 初心者 (20/11/20(Fri) 12:35) #96407
    └ Re[3]: SendMessageの使用法 / 魔界の仮面弁士 (20/11/20(Fri) 16:28) #96409
      └ SendMessageの使用法 / 初心者 (20/11/21(Sat) 11:39) #96414 ←Now
        └ Re[5]: SendMessageの使用法 / Azulean (20/11/21(Sat) 17:57) #96415
          └ Re[6]: SendMessageの使用法 / 初心者 (20/11/23(Mon) 15:02) #96442

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