1

上部のウィンドウからのコンテンツのコピーと貼り付けに依存する Python アプリケーションを作成しています。これを行うには、sendkey コマンドを発行します。前のウィンドウに移動するには Ctrl-Esc Ctrl-A に続いて Ctrl-C でウィンドウからすべてのテキストをコピーし、Cnrl-V でクリップボードの内容を一番上のウィンドウに貼り付けます。残念ながら、タイミングの問題が発生することがあります。

Cntl-A が Alt-Esc を待機し、Cntl-C が Cntl-A が完了するまで待機するように、SendKey コマンドをキューに入れる方法はありますか? または、次のコマンドを送信する前に、各コマンドがいつ終了したかを知る方法はありますか?

よろしくお願いいたします。

4

1 に答える 1

0

いいえ、そうは思いません。ここでは、個別のメッセージ キューについて話している。Alt+Esc は、おそらく Windows エクスプローラーによって処理されるグローバル ホットキーです。Ctrl+A と Ctrl+C はソース アプリによって処理され、順番に処理する必要があります。ただし、クリップボードをロック、クリア、および更新する必要があるため、Ctrl+C の後に遅延が発生します。その後、クリップボード通知チェーンに登録されているすべてのアプリケーションと、新しいクリップボード通知 API にクリップボード通知メッセージが送信されます。 . これらすべてのアプリケーションがデータに反応する機会を得た後、Ctrl+V で安全に貼り付けることができます。
なんらかのリモート デスクトップ ソフトウェアを実行している場合は、他のシステムがクリップボードの通知に反応するまで待つ必要があることに注意してください。これには、ネットワークを介したクリップボード データの同期が含まれます。これで、なぜこれが難しいのかがわかります。悪い知らせで申し訳ありません。

于 2013-05-17T13:09:26.580 に答える