UnenableRouter

UnenableRouter 関数は、IPv4 フォワーディング有効化要求数を追跡する参照カウントを減らす。参照カウントが 0 に達すると、ローカルコンピュータの IPv4 フォワーディングをオフにする。

UnenableRouter pOverlapped, lpdwEnableCount

pOverlapped : [var] OVERLAPPED 構造体へのポインタ。EnableRouter 呼び出しで使用したものと同一でなければならない。
lpdwEnableCount : [var] 残っている参照数を受け取るオプションの DWORD 変数へのポインタ。

(プラグイン / モジュール : iphlpapi.dll)

解説

UnenableRouter 関数は、IPv4 フォワーディング有効化要求数を追跡する参照カウントを減らす。参照カウントが 0
に達すると、ローカルコンピュータの IPv4 フォワーディングをオフにする。

[戻り値]
関数が成功すると、戻り値は NO_ERROR である。失敗した場合は FormatMessage
を使って返されたエラーのメッセージ文字列を取得する。

[備考]
UnenableRouter 関数は IPv4 フォワーディング専用である。各プロセスによる UnenableRouter
呼び出しは、同一プロセスによる以前の EnableRouter 呼び出しに対応している必要がある。余分な UnenableRouter
呼び出しに対してはシステムがエラーを返す。あるプロセスが別プロセスの IPv4
フォワーディング有効化要求に対する参照カウントを減らすことはできない。また、あるプロセスが有効化したフォワーディングを別プロセスが無効化することもできない。IPv4
フォワーディング有効化要求の参照カウントを正確に求めることはできないため、lpdwEnableCount には常に ULONG_MAX/2
に等しい大きな値が返される。
EnableRouter を呼び出したプロセスが UnenableRouter を呼ばずに終了した場合、システムは
UnenableRouter が呼ばれたかのように参照カウントを減らす。UnenableRouter 呼び出し後、OVERLAPPED
内のイベントオブジェクトのハンドルは CloseHandle でクローズする。

情報

プラグイン / モジュールiphlpapi.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の iphlpapi.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_iphlpapi_gen2.hs