問題タブ [intercept]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
449 参照

.net - Boo でメソッド呼び出しをインターセプトするにはどうすればよいですか?

Ruby には がありmethod_missing、Python には がありgetattrます。Boo は、メソッド呼び出しをインターセプトするために使用できるものを提供していますか?

0 投票する
4 に答える
14058 参照

c - X11 で WM_DELETE_WINDOW をインターセプトしますか?

私が書いているアプリケーション ( AllTrayWM_DELETE_WINDOW )の特定の選択されたウィンドウに投稿されたメッセージを傍受して、アプリケーションがそれを受信する代わりにそれに基づいて行動できるようにしたいと思います。私は現在、可能であれば GDK レベルでこれを試すことを検討していますが、Xlib ソリューションもあれば満足しています。それは可能であるように思われますが、私はそれを成功させる方法を理解していないようです.gdk_display_add_client_message_filter

現在、これを理解するために使用しようとしている 2 つのプログラム (C で記述)あります。そうすることに失敗しているようです。正確には何もしていないようです。これに関するドキュメントが間違っていることを理解していますか、それとも何か追加する必要がありますか (または、このために GDK を完全に使用しないようにする必要がありますか)?WM_DELETE_WINDOW

背景は次のとおりです。AllTray を書き直す前は、X ボタン自体のマウス クリックをインターセプトしようとする方法があったようです。一部のウィンドウ マネージャーでは、これは適切に機能し、他のウィンドウ マネージャーではまったく機能しませんでした。その他のウィンドウ マネージャーでは、ユーザーが手動で構成し、ウィンドウを閉じるボタンの場所を AllTray に指示する必要がありました。私が探しているのは、を含まず、現在の標準に準拠し、ウィンドウが閉じられたときに ClientMessageLD_LIBRARY_PRELOADを送信するウィンドウマネージャー/アプリケーションの組み合わせで機能するソリューションです。WM_DELETE_WINDOW

更新:私はまだ答えを探しています。私が現在取っているルートは、ウィンドウの親を変更して自分で管理しようとすることですが、うまく機能させることができません。再親化すると、それを元に戻すことはできないようです。非常に基本的なものが欠けている可能性がありますが、実際に自分のウィンドウに再び表示させて画面に戻す方法がわかりません。

更新 2 : わかりました、別のレンガの壁にぶつかりました。X サーバーのドキュメントには、ウィンドウのイベント マスクに StructureNotifyMask を設定して、MapNotify イベントと ReparentNotify イベントの両方を受け取るように記載されています。私はどちらかを受け取ることに興味があります。私が現在考えているのは、イベント レシーバーとして機能するウィンドウを作成し、興味深いことのイベントを取得したら、それらを作成して再ペアレント化することです。ただし、これは単に機能していないようです。実際に受け取るイベントは PropertyNotify イベントだけです。そのため、このルートもあまりうまくいっていないようです。

0 投票する
4 に答える
2471 参照

python - Python でのスライス操作のインターセプト

要素がスライスによって追加または削除されるたびに、リストを「保存」したいことを除いて、通常の python リストを模倣したい。これは可能ですか?これは私の試みでしたが、「保存」は決して出力されません。

appendこれは、や などの他のメソッドでは機能しextendますが、スライス操作では機能しません。

EDIT:本当の問題は、私がPythonではなくJythonを使用していて、それを忘れていたことです。質問に対するコメントは正しいです。このコードは Python (2.6) で正常に動作します。ただし、コードも回答も Jython で機能します。

0 投票する
1 に答える
795 参照

groovy - Groovy でこのコンストラクター呼び出しをインターセプトするにはどうすればよいですか?

スクリプトでは、メソッドは File 型のパラメーターを受け取り、それを File のコンストラクターに送信します。File には、別のファイルをパラメーターとして受け取るコンストラクターがないため、これは失敗します。

この呼び出しをインターセプトして、パラメーターを に変更するにはどうすればよいparameter.absolutePathですか?

例えば ​​:

それができない場合、どうすればこのコンストラクターを追加できますか:

0 投票する
2 に答える
1604 参照

printing - ローカルのWindowsXPマシンで印刷ジョブを傍受する方法はありますか?

できればPerlやPythonのようなスクリプト言語を使用しますが、コンパイルされたルートを使用する必要がある場合は、そうしてください。

基本的に私がやりたいのは、会社のメールマージシステムに追加することです。現在、使用しているソフトウェアでは、エクスポートするメールマージフィールドの選択肢がかなり限られていますが、データベースクエリの結果を文字に組み込むことができれば、さらに多くのことを達成できます(残念ながら、Wordでは十分な柔軟性が得られません。これを達成するためのデータベースクエリ)。私たちが使用するシステムは、その文字をデフォルトのプリンター(ピアツーピアプリンターであり、プリントサーバーはありません)に自動的に送信します。その仲介役となるプログラムを作りたいと思います。理想的には、印刷ジョブが起動されたことを検出し、送信されたドキュメントをキャプチャして開き、独自のクエリから追加のデータを挿入してから、新しいバージョンをプリンタに送信します。

2つの質問があります

  1. これも可能ですか?もしそうなら、どこから始めればよいですか?
  2. これは、1人の人が妥当な時間枠で完了するのに適していますか?私はトレードによるプログラマーではなく、sysadminタイプのperson=Pであることに注意してください。
0 投票する
1 に答える
2392 参照

blackberry - Blackberry で発信通話を傍受する

私たちは次のことを行う方法を探しています。

  • BB を持つユーザーが番号を入力します (または、連絡先を選択して [送信] をクリックします)。
  • バックグラウンドのアプリが通話イベントを検出します
  • 私たちのアプリは何かを行います(例:通話をブロックする/別の番号に電話をかけるなど)

これはまったくできますか?ユーザーに対して透過的に (つまり、ダイアログやユーザーの関与なしで) 実行できますか? どの API を調べる必要がありますか?

ありがとう

0 投票する
5 に答える
9186 参照

c# - Httpトラフィックを傍受する方法

発信Httpリクエストをインターセプトし、結果を古いシステムに返すC#アプリケーションを開発しようとしています。廃止されたWebサービスにHttpリクエストを送信するレガシーシステムがあります。送信リクエストをインターセプトして、新しいWebサービスに送信する必要があります。応答が戻ってきたら、それを操作してレガシーシステムに送信する必要があります。すべてのコードはクライアントマシンに配置する必要があります。httpリスナーに沿った何かがうまくいくと思いましたが、それでどこにも行き着きません。どんな提案でも大歓迎です。

0 投票する
1 に答える
1265 参照

qt - Qt、QPainter::drawText() が呼び出されたときにテキストを取得する

QPainter オブジェクトがあり、QPainter::drawText が呼び出されるたびに描画される文字列を取得したいと考えています。これは、スロットをその信号に接続できる場合と同様です (存在しないため、できません)。これを行う最良の方法は何ですか?setProperty メソッドを使用して drawText メソッドをカスタム メソッドにリダイレクトし、それに drawText へのポインターを渡すことについていくつか読んだことがありますが、試したことはありません。 drawText によって描画されるテキストの文字列を取得する方法は?

編集: ペインターからテキストを取得する代わりに、PaintEngine からテキストを取得しても問題ありません。

どんな助けでも大歓迎です、ありがとう

0 投票する
4 に答える
477 参照

c# - 一部のキー押下を他のキー押下に変換するにはどうすればよいですか?

私は試験でカンニングをすることについて素晴らしい考えを持っています。私の学校では非常に古いIDE(Turbo Pascal、Turbo C ++、およびその他の80年代のものを考えてください)を使用しています。私がやりたいことはこれです:

  • プログラムをバックグラウンドで開始する

  • キーの押下をインターセプトし、画面に直接送信するのではなく、事前に構成されたテキストファイルから文字を読み取り、それを押されたキーとして送信したいと思います。このように、何を書いても、そのファイルのテキストが画面に書き込まれます。

キーのロギングに関するStephenToubの記事を見つけました。これは、この「」を構築するための良いスタートになると思いますtool。システムで押されたすべてのキーを傍受するよりも良い代替手段はありますSetWindowsHookExか?コードは、ウイルス対策ソフトウェアによって疑わしいプログラムとしてフラグが付けられますか?もしそうなら、アンチウイルスによってフラグが立てられることなくこれを達成するために使用できるものは他にありますか?管理者権限は必要ですか?

学ぶことを避けるのと同じくらい学ぶことに興味を持っていれば、私は素晴らしいことをするだろうと言う人もいるでしょうが、これを試してみたいと思います。

編集:私は賞金を追加しました、私はキーストロークをキャプチャするためのいくつかのテクニックに興味があります(私は低レベルのフックや高度なものには興味がありません-基本的なものは問題ありません)、主にメソッド名とドキュメントへのリンクです。また、アンチウイルスに対してマルウェアとして表示されるかどうかも知りたいです。

0 投票する
10 に答える
13750 参照

objective-c - Objective-C でメソッド呼び出しをインターセプトする

Objective-C でメソッド呼び出しをインターセプトできますか? どのように?

編集: Mark Powellの回答により、部分的な解決策である-forwardInvocationメソッドが得られました。ただし、ドキュメントには、対応するメソッドがないオブジェクトがメッセージを送信された場合にのみ、 -forwardInvocation が呼び出されると記載されています。レシーバーにそのセレクターがある場合でも、すべての状況でメソッドが呼び出されるようにしたいと思います。