問題タブ [hook]

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 に答える
1152 参照

c++ - キーボードフックはすべてのデスクトップと対話します c++ win32

すべてのデスクトップでキーボード フックを機能させることはできますか? たとえば、winlogon デスクトップと対話型デスクトップで同時にキーを記録することはできますか? もしそうなら、どのように?助けてくれてありがとう!

編集:それを理解しました。キーをログに記録するように ctrl2cap ドライバーを変更しました。

0 投票する
7 に答える
15175 参照

javascript - Javascript関数フック

編集:わかりました、私は次の解決策が有効であると信じています:

  1. jQueryAOPプラグインを使用します。基本的に、古い関数をフックと一緒に関数サンドイッチにラップし、古い関数名に再割り当てします。これにより、新しく追加されたフックごとに関数がネストされます。
    jQueryが使用できない場合は、ソースコードを略奪するだけで、プラグインにjQueryの依存関係がないように見え、ソースは単純で非常に小さいものです。

  2. すべてのフックとそのターゲットを説明するオブジェクトと、最初の変更されていない関数を格納するオブジェクトを用意します。新しいフックを追加すると、以前のラッピング関数を再ラップする代わりに、元の関数の周りでラッピングがやり直されます。
    入れ子関数をエスケープし、代わりに2つのオブジェクトを処理します。フックを頻繁に追加/削除し、順序が狂っている場合、これはフックの処理が容易になることも意味する可能性があります。

すでに完了しているので、最初のものを使用します。パフォーマンスについて心配する必要はありません。また、元の関数は影響を受けないため、フック方法を切り替えても、フックの追加をやり直すだけで済みます。これは、単純な検索と置換の操作である可能性があります。


やあ、

関数Aがフックのセット(関数Aの前後に実行される関数)を持つメカニズムを作成することは可能ですか?

理想的には、関数Aはフック機能を認識しないため、フックを呼び出すために関数Aのソースコードを変更する必要はありません。何かのようなもの:

私は数時間何かをハックしようとしてきましたが、今のところ運がありません。

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

c++ - C++ - WinSock フックを迂回する

私がやろうとしているのは、Detours ライブラリを使用して、アプリケーションの WinSock2 send() および recv() 関数 (パケット ロガー) にフックすることです。

send() 関数では機能しますが、recv() 関数では機能しません。

これが私の関連コードです:

何か案は?

編集:そこで、recvfrom() と WSARecvEx() もフックしましたが、発信パケットはまだログに記録されません! 正確なコードでコードを更新しました。

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

svn - Subversion チェックアウト フックなどはありますか?

私は Subversion リポジトリを使用していますが、誰かが私のリポジトリにチェックアウトを要求するたびに知りたいです。「svn co」または「svn up」のように。誰かが私のsvnサーバーから情報を要求するたびに、スクリプトを実行したり、電子メールを送信したりするために使用できるフックまたはその他の方法はありますか? Apache ログに頼らずにこれを達成するにはどうすればよいですか?

ところで、それは教育目的のためだけの非常に単純なリポジトリです。

(さらに情報が必要な場合は、お尋ねください。よろしくお願いします。)

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

svn - コミットされたファイルのファイル名などを知るためにSVNフックを実装するにはどうすればよいですか?

私は Windows XP と TortoiseSVN を使用しています。ファイル名、ファイルのパス、作成者、および post-commit フックを使用してリポジトリにコミットされたリビジョンに関するその他の詳細を知りたいです。これを行うには、Python などの特定の言語を使用する必要がありますか、それともバッチ ファイルのみを使用しても記述できますか?

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

java - Java/SWT: 埋め込みウィンドウからマウス イベントを受け取る方法

「再ペアレント化」を使用して Windows アプリケーションを SWT アプリケーションに埋め込んでいます。その部分は正常に動作します。組み込みアプリがマウス移動イベントを受信できるように、SWT アプリをメッセージ キューにフックしたいと考えています。

SWT の OS クラスには、フックを追加するための興味深いメソッドがいくつかあるようですが、それらの使用方法がわかりません。

誰でも助けることができますか?

ありがとう

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

search - Drupal hook_search 関数の場所

drupal の hook_search 関数がどこにあるのか、一生わかりません。アクセスするためにファイルに追加する必要があるものはありますか?

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

c++ - ウィンドウフッキングの質問

これを使用しています:

処理したいメッセージは表示されますが、それらのメッセージがターゲットウィンドウに到達しないようにしたいです。だから私はこれを試しました:

これを行うと、メッセージを変更して、ターゲットウィンドウがメッセージを処理できないようにすることができますが、このフックは、処理する必要のあるメッセージを認識しません。これは、送信ではなく、ターゲットウィンドウのキューに投稿されているためだと思いますか?この問題を回避する方法はありますか?ウィンドウのサブクラス化でこれを実現できる可能性があると聞きましたが、別のプロセスでウィンドウをサブクラス化できますか?フックを使用してこれを行う方法はありますか?

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

windows - メモリ追跡アプリケーションのHeapAllocへのフック呼び出しの行き詰まり

IATパッチメカニズムを使用してHeapAllocへのすべての呼び出しをフックするメモリ追跡アプリケーションを作成しています。アイデアは、HeapAllocへのすべての呼び出しをキャプチャし、コールスタックを取得することです。

ただし、現在、DBGHELPAPIを使用してコールスタックを取得する際に問題が発生しています。dbghelpdll自体がMSVCRTdllにリンクしており、この依存関係により再帰呼び出しが発生することがわかりました。ターゲットアプリケーションからの呼び出しのいずれかに対してコールスタックを取得しようとすると、dbghelpはMSVCRTから内部的にHeapAllocを呼び出すメソッドを呼び出します。また、MSVCRTにパッチを適用しているため、無限ループが発生します。

誰かがこの問題に直面してそれを解決しましたか?この行き詰まりから抜け出す方法はありますか?

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

c++ - WH_MOUSE フックと WH_MOUSE_LL フックの違いは何ですか?

WH_MOUSE常に呼び出されるとは限らないことがわかりました。問題は、私が使用していて、使用WH_MOUSEしていないことWH_MOUSE_LLでしょうか?

コード: