UnhookMultiple(function, handle, handle)

grandMA3 ユーザマニュアル » プラグイン » Lua 関数 - Object-Free API » UnhookMultiple(function, handle, handle) Version 2.2

説明

UnhookMultiple 関数は、入力に基づいて複数のフックを解除します。これは、解除すべきすべてのフックを識別するフィルタのように機能します。

DumpAllHooks 関数を用いると、システム内の既存のフックをすべて一覧表示できます。

引数

  • function または nil:
    トリガーされた関数名または nil である必要があります。
  • handle または nil:
    ターゲット・オブジェクトのハンドルまたは nil である必要があります。
  • handle または nil:
    コンテキスト・オブジェクトのハンドルまたは nil である必要があります。

ターゲット名とコンテキスト名は、DumpAllHooks 関数を用いて確認できます。

戻り値

  • integer:
    フックが解除された数を示す整数を返します。


ヒント
関連する DumpAllHooksHookObjectChangeUnhook 関数も参照してください。

この例では、HookObjectChange の例で作成された関数に関連するすべてのフックを解除します。これ実行する前に、そのトピックの例を実行してください。

Lua
return function ()
-- Unhooks all hooks related to the "MySequencePoolCallback" function.
local amount = UnhookMultiple(MySequencePoolCallback)
-- Print how many hooks that were unhooked.
Printf(amount .. " hook(s) were unhooked.")
end