1

PyWin32 の win32process.CreateProcess を使用して、Python クラスで使用したい機能を持つ GUI プログラムを起動しています。

この GUI を使用して、Python から次のことを実行したいと考えています。

  • GUI内の個々のウィンドウにテキストを送信しました(WinSpy ++が信じられる場合、プロセスを作成するたびに識別子が変わるようです)、
  • GUI のボタンをクリックして、計算を構成および開始します。
  • GUI から計算出力を取得します (これにより、GUI 内のテキスト出力または保存ファイル出力のいずれかが可能になります)。

簡単な質問: これらのタスクを達成するには、どの Python/PyWin32 機能を調査する必要がありますか? 私は実際のコードを探しているのではなく、これらのことを自分で行う方法を学ぶために調査すべき領域を探しているだけです。Learning Python、Programming Python、および Python Programming on Win32 のほとんどをスキャンしましたが、そこに答えがあるかどうかわかりません。

ありがとう、

マイク

4

1 に答える 1

1

あなたがやりたいことは複雑で、Python でそれを達成できるかどうかはわかりません。私はいくつかのポインタしか投稿できませんが、それが正しい方向であることを保証することはできません.

個々のウィンドウにテキストを送信する場合 ( SendMessage関数があります)、おそらくデータをキーストローク メッセージとして目的のウィンドウに送信する必要があります。hWnd取る引数については、 EnumChildWindows関数などSendMessageを呼び出すことで取得できるはずです。

WndProc出力の取得はさらに困難です。ターゲット ウィンドウを、印刷中に出力を保存するウィンドウに置き換える必要があると思います。SetWindowLongWndProcで置き換えることができます(おそらく)。

そのようにできるはずですが、個人的には、そのようなコーディングを避けるために何でもします。

もう1つ-Pythonに関連する質問ではありません。Win32API で同様のことを実現している C/C++ コードを見つけて、それを Python に変換してみてください。SO で WinAPI リソースを検索します。あなたが十分に必死なら、それは...

于 2010-08-02T12:07:08.547 に答える