次の方法で共有


SetIpNetEntry2 関数

SetIpNetEntry2 関数は、ローカル コンピューター上の既存の近隣 IP アドレス エントリの物理アドレスを設定します。

構文

NETIOAPI_API SetIpNetEntry2(
  _In_ PMIB_IPNET_ROW2 Row
);

パラメーター

  • [入力]
    近隣 IP アドレス エントリの MIB_IPNET_ROW2 構造体エントリへのポインター。

戻り値

SetIpNetEntry2 、関数が成功した場合 STATUS_SUCCESSを返します。

関数が失敗した場合、SetIpNetEntry2 は次のいずれかのエラー コードを返します。

リターン コード 形容
STATUS_INVALID_PARAMETER

無効なパラメーターが関数に渡されました。 このエラーは、次の状況で返されます。

  • Row パラメーターに、NULL ポインターが渡されました。

  • AddressRow パラメーターが指す MIB_IPNET_ROW2 構造体のメンバーが、有効なユニキャスト、エニーキャスト、またはマルチキャスト IPv4 または IPv6 アドレスに設定されていません。

  • MIB_IPNET_ROW2構造体の PhysicalAddress および PhysicalAddressLength メンバーが有効な物理アドレスに設定されませんでした。

  • MIB_IPNET_ROW2構造体 interfaceLuid メンバーと InterfaceIndex メンバーはどちらも指定されていませんでした。

  • ループバック アドレスが Address メンバーに渡されました。

STATUS_NOT_FOUND

指定されたインターフェイスが見つかりませんでした。 このエラーは、Row パラメーターが指すMIB_IPNET_ROW2構造体の InterfaceLuid または InterfaceIndex メンバーによって指定されたネットワーク インターフェイスが見つからない場合に返されます。

STATUS_NOT_SUPPORTED

要求はサポートされていません。 このエラーは、ローカル コンピューターに IPv4 スタックがなく、 パラメーターが指すMIB_IPNET_ROW2構造体の Address メンバーに IPv4 アドレスが指定されている場合、またはローカル コンピューターに IPv6 スタックがなく、Address メンバーに IPv6 アドレスが指定されている場合に返されます。

その他の

FormatMessage 関数を使用して、返されたエラーのメッセージ文字列を取得します。

備考

ドライバーは、Row パラメーターが指す MIB_IPNET_ROW2 構造体の次のメンバーを初期化する必要があります。

  • アドレス
    有効なユニキャスト、エニーキャスト、またはマルチキャスト IPv4 または IPv6 アドレスとファミリに設定します。

  • PhysicalAddress PhysicalAddressLength
    有効な物理アドレスに設定します。

  • InterfaceLuid または InterfaceIndex する
    これらのメンバーは、前に示した順序で使用されます。 そのため、InterfaceLuid 指定した場合、このメンバーを使用してインターフェイスが決定されます。 InterfaceLuid メンバーに値が設定されていない場合 (このメンバーの値が 0 に設定されました)、インターフェイスを決定するために、InterfaceIndex メンバーが次に使用されます。

SetIpNetEntry2 関数は、Row パラメーターが指すMIB_IPNET_ROW2構造体の Address メンバーで渡される IP アドレスが、指定されたインターフェイス上の既存の近隣 IP アドレスでない場合に失敗します。

必要条件

ターゲット プラットフォーム

ユニバーサル

バージョン

Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。

ヘッダ

Netioapi.h (Netioapi.h を含む)

図書館

Netio.lib

IRQL

< DISPATCH_LEVEL

関連項目

CreateIpNetEntry2

DeleteIpNetEntry2

FlushIpNetTable2

GetIpNetEntry2

GetIpNetTable2

MIB_IPNET_ROW2

MIB_IPNET_TABLE2

ResolveIpNetEntry2