問題タブ [deviare]
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.
.net - API フック、TerminateProcess 関数で予期しないハンドルが見つかりました
問題
TerminateProcess呼び出しをフックして、終了するプロセスを特定しましたTerminateProcess
が、インターセプトしようとしている実際のプロセス ハンドルと一致しない予期しないハンドルを取得しています。
私はDeviareTerminateProcess
ライブラリを使用していますが、この問題は、関数がどのように機能し、適切なハンドル比較を実行するために何をする必要があるかを知るだけで解決できると思います。
質問:
プロセスの終了を特定したいプロセスのハンドルがわかっている場合hProcess
、TerminateProcess
関数のパラメーターからそのハンドルを特定するにはどうすればよいですか?
コード:
ハンドルを比較しようとしている部分に注意してください。
同じハンドルになることはありません(私もProcess IDMainWindowHandle
で試しました) ID
そのため、パラメーターの値はhProcess
私にとって非常に不明です。
リサーチ:
TerminateProcessの MSDN ドキュメントを読んでいます。
それが言う部分に注意してください:
ハンドルには PROCESS_TERMINATE アクセス権が必要です
ハンドルを比較するために何かを見逃しているかどうかはわかりません。
また、私はここを読んでいますが、はっきりとはわかりませんでした:
TerminateProcess をフックし、それが提供するハンドルから情報を取得する
適切なハンドル比較を実行する必要がある場合は、この Enum も設計しました。
c# - Deviare v2 C# フック API 呼び出しとパラメーターの読み取り
パラメータを読み取る方法を理解しようとしています。フックが機能するようになりました。唯一のことは、これを行うたびにクラッシュすることです。
getPlayerPtr 定義:
c# - Deviareで構造体のフィールドに書き込む方法は?
Deviareを使用して関数をフックおよびインターセプトできますが、フィールドのパラメーターGetLocalTime
の値を変更するにはどうすればよいですか。use を見つけることができるスニペットはほとんどありませんが、残念ながらそれは void 関数であり、への直接代入は何もしません。out
wYear
SYSTEMTIME
NktHookCallInfo.Result
Field(0).Value
windows - ドキュメントがプレビュー ペインで開いているかどうかを確認する方法
ドキュメントがプレビュー ペインで開いているかどうかを確認または検出して、それを使用できるようにしたいsetwindowdisplayaffinity()
。始める方法はありますか?