共用方式為


SetIpNetEntry2 函式 (netioapi.h)

SetIpNetEntry2 函式會在本機電腦上設定現有鄰近IP位址專案的實體位址。

語法

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API SetIpNetEntry2(
  [in, out] PMIB_IPNET_ROW2 Row
);

參數

[in, out] Row

鄰近IP位址專案的 MIB_IPNET_ROW2 結構專案的指標。

傳回值

如果函式成功,傳回值會NO_ERROR。

如果函式失敗,傳回值就是下列其中一個錯誤碼。

傳回碼 Description
ERROR_ACCESS_DENIED
存取遭到拒絕。 此錯誤會在數種狀況下傳回:使用者缺少本機電腦上的必要系統管理許可權,或應用程式未在增強殼層中執行,因為內建系統管理員 (RunAs 系統管理員) 。
ERROR_INVALID_PARAMETER
無效的參數已傳遞至 函式。 如果在 Row 參數中傳遞 NULL 指標、Row 參數所指向之MIB_IPNET_ROW2Address 成員未設定為有效的單播、anycast 或多播 IPv4 或 IPv6 位址、PhysicalAddress 和 PhysicalAddressLength 成員,Row 參數所指向之MIB_IPNET_ROW2的 Address 成員未設定為有效的實體位址,就會傳回此錯誤。 或 Row 參數所指向之MIB_IPNET_ROW2InterfaceLuidInterfaceIndex 成員都未指定。 如果在 Address 成員中傳遞回送位址,也會傳回此錯誤。
ERROR_NOT_FOUND
找不到指定的介面。 如果找不到 Row 參數所指向之MIB_IPNET_ROW2InterfaceLuidInterfaceIndex 成員所指定的網路介面,就會傳回此錯誤。
ERROR_NOT_SUPPORTED
不支援此要求。 如果本機計算機上沒有IPv4堆棧,而且已在Row參數所指向之MIB_IPNET_ROW2Address成員中指定IPv4位址,或本機計算機上沒有IPv6堆棧,且地址成員中指定了IPv6位址,則會傳回此錯誤。
其他
使用 FormatMessage 取得傳回錯誤的訊息字串。

備註

SetIpNetEntry2 函式是在 Windows Vista 和更新版本上定義。

SetIpNetEntry2 函式可用來設定本機計算機上現有鄰近IP位址項目的實體位址。

Row 參數所指向之MIB_IPNET_ROW2結構中的 Address 成員必須初始化為有效的單播、任何播或多播 IPv4 或 IPv6 位址和系列。 Row 參數所指向之MIB_IPNET_ROW2結構中的 PhysicalAddress 和 PhysicalAddressLength 成員必須初始化為有效的實體位址。 此外,指向 Row 參數之MIB_IPNET_ROW2結構中至少有一個下列成員必須初始化為 介面:InterfaceLuidInterfaceIndex

欄位會依照上面所列的順序使用。 因此,如果指定 InterfaceLuid ,則會使用此成員來判斷要新增單播 IP 位址的介面。 如果未為 InterfaceLuid 成員設定任何值, (此成員的值設定為零) ,則下一步會使用 InterfaceIndex 成員來判斷介面。

如果 Row 參數所指向之MIB_IPNET_ROW2地址成員中傳遞的 IP 位址不是指定的介面上現有的鄰近 IP 位址,SetIpNetEntry2 函式將會失敗。

SetIpNetEntry2 函式只能由以 Administrators 群組成員身分登入的使用者呼叫。 如果 SetIpNetEntry2 是由不是 Administrators 群組成員的使用者呼叫,則函式呼叫將會失敗,並 傳回ERROR_ACCESS_DENIED

SetIpNetEntry2 函式也可能因為使用者帳戶控制 (Windows Vista 和更新版本上的 UAC) 而失敗。 如果包含此函式的應用程式是由使用者以系統管理員以外的系統管理員群組成員身分登入來執行,除非應用程式已在指令清單檔中標示為 requestedExecutionLevel 設定為 requireAdministrator,否則此呼叫將會失敗。 如果應用程式缺少此指令清單檔,則身為系統管理員以外的 Administrators 群組成員登入的使用者,就必須在增強殼層中執行應用程式,因為內建系統管理員 (RunAs 系統管理員) ,此函式才能成功。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 netioapi.h (包括 Iphlpapi.h)
程式庫 Iphlpapi.lib
Dll Iphlpapi.dll

另請參閱

CreateIpNetEntry2

DeleteIpNetEntry2

FlushIpNetTable2

GetIpNetEntry2

GetIpNetTable2

MIB_IPNET_ROW2

MIB_IPNET_TABLE2

ResolveIpNetEntry2