問題タブ [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 に答える
987 参照

android - Android が他のアプリからのイベントを傍受する

ゲーム、マップなど、他のサードパーティアプリからイベントを傍受する方法を知っている人はいますか?これには、モーションイベント、画面プロンプトなどのイベントが含まれます.

AccessibilityService、クリック、ロングクリックなどを介してタッチ イベントをキャプチャすることについては、限られた成功しか収めていません。

(対照研究でそのような情報を取得することをユーザーから承認を得ています)

電話をルート化すると (カーネルを混乱させると)、そのようなデータを取得できると考えていますが、ユーザーの電話の保証がうっかり無効になってしまうので、API レベルでそのような情報を取得する他の方法はありますか?

どうもありがとう!

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

c# - NotifyPropertyChange イベントをインターセプトする方法

最近、INotifyPropertyChange インターフェイスを発見しました。このインターフェイスをクラスに実装することができ、すべて正常に動作します。ただし、コードでこのイベントを傍受して関数を起動できるかどうか疑問に思っていました関数があるとしましょう

また、property1、property2、または property3 が変更されるたびにこの関数を起動したくありません。もちろん、この関数をクラスの set ブロックに入れることもできますが、これは良い考えではありません (私は思います)。

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

.net - PIN コードを要求するプログラムを検出し、正しいコードを渡す

特定の VPN 接続を必要とする Windows サービスに取り組んでいます。

私の問題は、顧客が提供するソリューション (Rainbow iKey USB スティック) では、VPN 接続が開始されるたびにユーザーが PIN コードを入力する必要があることです。これは、メンテナンスウィンドウがある場合、少なくとも毎晩発生します。

これは Windows サービスであり、サーバー環境で実行することを意図しているため、人々が毎朝 PIN コードを打ち込むことに頼ることはできません。

「トークンログイン」がいつ表示されたかを検出し、正しいピンコードを渡す必要があります-それは可能ですか?

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

java - JBossシーム:継承されたメソッドはインターセプトされますか?

標準のJavaクラスを拡張してサブクラスをSeamコンポーネントにすると、継承されたメソッドにインターセプトのオーバーヘッドが発生しますか?

つまり、それらをオーバーライドして、@ BypassInterceptorsで注釈を付ける必要がありますか?

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

encryption - Windows 7 でプログラムからの出力をインターセプトする

C:\documents などのハードディスクにデータを出力する実行可能プログラムがあります。

Windows 7 のデータがハード ドライブに到達する前に傍受する手段が必要です。次に、データを暗号化してハードディスクに送り返します。残念ながら、.exe ファイルはリダイレクト コマンド (コマンド プロンプトでの > など) をサポートしていません。任意のプログラミング言語 (c、c++、JAVA、php) でそのようなことを達成する方法を知っていますか。

暗号化は、プレーンデータがディスクに送信される前にのみ実行できます。送信後ではありません。

どんなアイデアでも大歓迎です。ありがとう

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

windows - VB.Net を使用して外部アプリケーションから MsgBox をブロックする

外部アプリケーションから MsgBox() をインターセプトし、VB.Net を使用してブロックする方法はありますか?

この説明では、MsgBox のタイトルが「SQL アプリケーション」で、メッセージが「SQL エラー - 再試行」であるとします。

ポップアップする MsgBox を検索して (ウィンドウ タイトルを監視することにより)、キーを送信して [OK] を押す例をいくつか見つけましたが、プロセス全体を回避できるかどうかに興味がありました。そうしないと、一時的なものであっても、ユーザーには MsgBox または「フラッシュ」が表示されます。

これを回避することは可能ですか?

0 投票する
3 に答える
2124 参照

delphi - httpPOSTリクエストをインターセプトする

ブラウザ関数をフックせずにdelphiでhttppostリクエストをインターセプトする方法を探していますが、それは可能ですか?どのように??

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

c++ - 行 x と y の n 交点 / C++

誰か助けてください。直線の方程式とゼロ切片を紙で解く方法は理解していますが、それをコードに変換するのは難しいです。より具体的には、線が特定の X または Y 座標と交差する点を 2 つの異なる関数で計算する必要があります...

そのためCalcLineYIntercept、線が交差するポイントの X 座標が返されyinterceptます (ゼロである必要はありません)。代数方程式をコードに変換するのに問題があります (もちろん、C++ は代数言語であることは理解していますが、コード自体は単純に変数を分離するわけではありません)。これを達成する簡単な方法はありますか?

どうもありがとうございました

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

c# - 分離されたオブジェクト間に制約を適用する方法は?

- 元の投稿を一番下に移動しました。これは、このスレッドの新規参入者にとってまだ価値があると思うからです。すぐ下に続くのは、フィードバックに基づいて質問を書き直す試みです。

完全に編集された投稿

わかりました、私は特定の問題についてもう少し詳しく説明しようとします。ドメインロジックとインターフェイス/プレゼンテーションロジックを少しブレンドしていることに気づきましたが、正直なところ、どこで分離するかわかりません。我慢してください:)

私は、(とりわけ)物を移動するための物流シミュレーションを実行するアプリケーションを作成しています。基本的な考え方は、ユーザーが Visual Studio に似たプロジェクトを表示し、ここで概説しようとしているさまざまなオブジェクトを追加、削除、名前付け、整理、注釈付けなどを行うことができるということです。

  • 項目場所は、基本的な動作のないデータ項目です。

    /li>
  • WorldStateは、アイテムと場所のペアのコレクションです。WorldState は変更可能です。ユーザーはアイテムを追加および削除したり、場所を変更したりできます。

    /li>
  • プランは、希望する時間に別の場所にアイテムを移動することを表します。これらは、プロジェクトにインポートするか、プログラム内で生成できます。WorldState を参照して、さまざまなオブジェクトの初期位置を取得します。プランも変更可能です。

    /li>
  • 次に、シミュレーションがプランを実行します。それは多くのかなり複雑な動作やその他のオブジェクトをカプセル化しますが、最終的な結果はSimulationResult です。これは基本的に、このコストと計画がどれだけうまく達成されたかを説明するメトリックのセットです (プロジェクト トライアングルを考えてください)。

    /li>

基本的な考え方は、ユーザーがこれらのオブジェクトを作成し、それらを結び付け、再利用できる可能性があるということです。WorldState は、複数の Plan オブジェクトで使用できます。その後、シミュレーションは複数のプランで実行できます。

恐ろしく冗長になるリスクを冒して、例

問題は、次のようなものが実行されるときです。

したがって、基本的に、ユーザーが呼び出しを介して WorldState (およびおそらくプロジェクト全体) から項目を削除しようとするworld.RemoveItem(item)と、その項目がその WorldState を使用する Plan オブジェクトで参照されないようにする必要があります。もしそうなら、私はユーザーに「おい!次のプランXがこのアイテムを使用している!それを削除しようとする前にそれを処理してください!」と伝えたい. 通話で望ましくない種類の動作は次のとおりです。world.RemoveItem(item)

  • アイテムを削除しますが、プランはそれを参照します。
  • アイテムを削除するが、Plan にアイテムを参照するリスト内のすべての要素をサイレント モードで削除させる。(実際には、これはおそらく望ましいことですが、二次的なオプションとしてのみ使用できます)。

したがって、私の質問は基本的に、そのような望ましい動作をきれいに分離した方法で実装するにはどうすればよいかということです。これをユーザーインターフェイスの範囲にすることを検討しました(したがって、ユーザーがアイテムで「del」を押すと、プランオブジェクトのスキャンがトリガーされ、world.RemoveItem(item)を呼び出す前にチェックが実行されます)-しかし(a)私はまた、ユーザーがworld.RemoveItem(item)自分自身を呼び出すことができるように、カスタム スクリプトを作成および実行できるようにしています。(b) この動作が純粋に「ユーザー インターフェイス」の問題であるとは確信していません。

ふぅ。まあ、誰かがまだ読んでいるといいのですが...

元の投稿

次のクラスがあるとします。

したがって、宇宙船のサイズがそのホームの MaximumShipSize 以下でなければならないという制約が存在するとします。

では、これにどのように対処すればよいでしょうか。

伝統的に、私は次のように結合された何かをしました:

これは、このような単純な例では扱いやすいものですが (おそらく悪い例です)、制約が大きくなり、より複雑になるにつれて、より関連する機能が必要になることがわかりました (たとえば、メソッドを実装するbool CanChangeMaximumShipSizeTo(double)か、データを収集する追加のメソッドを実装する不要な双方向の関係 (この場合、SpaceBase-Spaceship がほぼ間違いなく適切です) と複雑なコードを書くことになり、所有者側とはほとんど関係がありません。

では、この種のことは通常どのように処理されますか? 私が検討したこと:

  1. ComponentModel INotifyPropertyChanging/PropertyChanging パターンに似たイベントを使用することを検討しましたが、EventArgs にはある種の Veto() または Error() 機能があります (winforms でキーを消費したり、フォームの終了を抑制したりできるように)。しかし、これがイベンティングの悪用に該当するかどうかはわかりません。

  2. または、明示的に定義されたインターフェースを介して自分でイベントを管理します。

asdf ここにこの行が必要です。そうしないと、フォーマットが機能しません

しかし、これがより良いかどうかはわかりません。また、この方法で自分のイベントをローリングするとパフォーマンスに影響があるかどうか、またはこれが良い/悪い考えである理由が他にあるのかどうかもわかりません。

  1. 3 番目の選択肢は、PostSharp または IoC/依存性注入コンテナーを使用する非常に風変わりな aop です。私はまだその道を進む準備ができていません

  2. すべてのチェックなどを管理する神オブジェクト -神オブジェクトのスタックオーバーフローを検索するだけで、これは悪くて間違っているという印象を受けます

私の主な懸念は、これはかなり明白な問題のように思え、かなり一般的な問題だと思っていましたが、それについての議論を見たことがありません (たとえば、System.ComponentModel は PropertyChanging イベントを拒否する機能を提供していません。そうですか?); これは、私が (もう一度) カップリングまたは (さらに悪いことに) 一般的なオブジェクト指向設計のいくつかの基本的な概念を把握できなかったのではないかと心配しています。

コメント? }

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

jquery - jQueryを使用して、ハイパーリンククリックイベントを一時的にインターセプトするにはどうすればよいですか?

この質問はアフィリエイトマーケティングに関するものですが、実際には、訪問者のアクティビティをデータベースに記録できる別のサイトに移動する前にハイパーリンクを傍受することに関する一般的な質問です。

私のアフィリエイトマーケティングクライアントは本当に良い質問をしました。シードキーワードを指定して、APIを介してAmazonから商品をプルバックするシナリオを想像してみてください。ここで、訪問者がこれらの製品の1つをクリックして、Amazonで表示するとします。その製品のURLは次のようになります(これは単なるデモです)。

http://www.amazon.com/dp/B0042RU3Y0/?tag=xxxxxxxxxxxxxxxx-20

しかし、それの何が問題になっていると思いますか?そのシードキーワードを渡していない。したがって、どのシードキーワードが最も効果的であったかはわかりません。代わりに、彼女は私たちが以下を通過し、それをどうにかして追跡できることを望んでいました:

http://www.amazon.com/dp/B0042RU3Y0/?tag=xxxxxxxxxxxxxxxx-20&seed=laptops

追加のパラメーターを渡して、フィルターによってレポートで追跡できるドキュメントはAmazonにありませんでした。

だから、私が考えることができる唯一のことは、Amazonに行く前にクリックをキャプチャする必要があるということです。言い換えれば、そのイベントがバブルして実行される前に、どういうわけかjQueryで最初にそれをインターセプトし、そのハイパーリンクのhref URLを解析し、この追加のシードキーワード情報を追加し、AJAXを介してPHPページとデータベースに送り返すことができますテーブルをクリックし、そのクリックイベントを解放して実行し、ブラウザがAmazonに移動するようにします。

これがjQueryでどのように行われるか知っている人はいますか?私はAJAXの部分を知っています-クリックをつかんでそれを解放するクリックインターセプトの部分だけではありません。