RestoreMediaSense 関数は、以前に DisableMediaSense を呼び出したローカルコンピュータ上の TCP/IP スタックのメディアセンス機能を復元する。
RestoreMediaSense pOverlapped, lpdwEnableCount
pOverlapped : [var] OVERLAPPED 構造体へのポインタ。hEvent メンバ以外はすべて 0 に設定し、hEvent には有効なイベントオブジェクトへのハンドルを設定する。CreateEvent でイベントオブジェクトを作成する。 lpdwEnableCount : [var] RestoreMediaSense が成功した場合、残っている参照数を受け取るオプションの DWORD 変数へのポインタ。この変数は EnableRouter / UnenableRouter でも使用される。
(プラグイン / モジュール : iphlpapi.dll)
RestoreMediaSense 関数は、以前に DisableMediaSense を呼び出したローカルコンピュータ上の TCP/IP スタックのメディアセンス機能を復元する。 [戻り値] 関数が成功すると、戻り値は NO_ERROR である。失敗した場合は以下のエラーコードのいずれかが返される。 このドキュメントは省略されている。 [備考] pOverlapped が NULL なら RestoreMediaSense は同期実行され、そうでなければ OVERLAPPED を用いて非同期実行される。DisableMediaSense は後に RestoreMediaSense が呼ばれるまで完了しない。その間、I/O 要求パケット (IRP) はキューに残る。また、DisableMediaSense を呼び出したプロセスが終了すると IRP はキャンセルされ、キャンセルルーチンによりメディアセンス機能が再度復元される。 同期呼び出しでは NULL を渡し、IRP 完了時に関数が返る。非同期呼び出しでは OVERLAPPED を割り当て、hEvent 以外を 0、hEvent に CreateEvent のハンドルを設定する。非同期時は ERROR_IO_PENDING を返すことがある。IRP はメディアセンス機能復元時に完了する。イベントオブジェクトが不要になれば CloseHandle でハンドルをクローズする (プロセス終了時は自動クローズ)。DisableMediaSense が先に呼ばれていない場合、RestoreMediaSense は ERROR_INVALID_PARAMETER を返す。Windows Server 2003 / Windows XP では、TCP/IP スタックが物理ネットワークインターフェイスのメディアセンス切断イベントに応じてインターフェイスの全 IP アドレスを削除するポリシーを実装している。スイッチやハブの電源断、ケーブル切断などで切断イベントが発生すると IP 設定情報が失われ、IP ヘルパ経由の取得にも表示されなくなる。この挙動はサーバやクラスタに影響し得るため、DisableMediaSense で一時的にメディアセンス機能を無効化し、後で RestoreMediaSense を呼び出して復元できる。関連するレジストリ設定: System\CurrentControlSet\Services\Tcpip\Parameters\DisableDHCPMediaSense マシン起動時にこのレジストリキーが存在すれば内部フラグがセットされる。同じ内部フラグは DisableMediaSense / RestoreMediaSense でも設定/解除される。レジストリ設定による変更は再起動が必要。 Windows Vista 以降の TCP/IP スタックは切断時にインターフェイスを隠さなくなったため、これらの関数は何もせず常に NO_ERROR を返す。
| プラグイン / モジュール | iphlpapi.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の iphlpapi.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_iphlpapi_gen2.hs |