Fungsi SetUnicastIpAddressEntry

Fungsi SetUnicastIpAddressEntry mengatur properti entri alamat IP unicast yang ada di komputer lokal.

Sintaksis

NETIOAPI_API SetUnicastIpAddressEntry(
  _In_ const MIB_UNICASTIPADDRESS_ROW *Row
);

Parameter

Mengembalikan nilai

SetUnicastIpAddressEntry mengembalikan STATUS_SUCCESS jika fungsi berhasil.

Jika fungsi gagal, SetUnicastIpAddressEntry mengembalikan salah satu kode kesalahan berikut:

Mengembalikan kode Deskripsi
STATUS_INVALID_PARAMETER

Parameter yang tidak valid diteruskan ke fungsi. Kesalahan ini dikembalikan jika penunjuk NULL diteruskan dalam parameter Baris, Alamat anggota struktur MIB_UNICASTIPADDRESS_ROW bahwa baris parameter poin tidak diatur ke alamat IPv4 atau IPv6 unicast yang valid, atau antarmuka Dan InterfaceIndex anggota struktur MIB_UNICASTIPADDRESS_ROW tidak ditentukan.

STATUS_NOT_FOUND

Antarmuka yang ditentukan tidak dapat ditemukan. Kesalahan ini dikembalikan jika fungsi tidak dapat menemukan antarmuka jaringan yang ditentukan oleh InterfaceLuid atau InterfaceIndex anggota struktur MIB_UNICASTIPADDRESS_ROW yang ditunjuk oleh parameter Baris.

STATUS_NOT_SUPPORTED

Permintaan tidak didukung. Kesalahan ini dikembalikan jika tidak ada tumpukan IPv4 yang terletak di komputer lokal dan alamat IPv4 ditentukan dalam Alamat anggota struktur MIB_UNICASTIPADDRESS_ROW yang ditunjuk parameter Baris, atau jika tidak ada tumpukan IPv6 yang terletak di komputer lokal dan alamat IPv6 ditentukan dalam Alamat anggota.

Lainnya

Gunakan fungsi FormatMessage untuk mendapatkan string pesan untuk kesalahan yang dikembalikan.

Komentar

FungsiGetUnicastIpAddressEntrybiasanya digunakan untuk mengambil entri struktur MIB_UNICASTIPADDRESS_ROW yang ada untuk dimodifikasi. Driver kemudian dapat mengubah anggota dalam entri MIB_UNICASTIPADDRESS_ROW yang ingin dimodifikasi, lalu memanggil fungsi SetUnicastIpAddressEntry.

Driver dapat memanggil fungsiInitializeUnicastIpAddressEntry untuk menginisialisasi anggota entri struktur MIB_UNICASTIPADDRESS_ROW dengan nilai default sebelum membuat perubahan. Namun, driver biasanya menyimpan InterfaceLuid atau interfaceIndex sebelum memanggil InitializeUnicastIpAddressEntry dan memulihkan salah satu anggota ini setelah panggilan.

Driver Anda harus menginisialisasi anggota struktur MIB_UNICASTIPADDRESS_ROW berikut yang ditunjuk oleh parameter Baris.

  • Alamat
    Atur ke alamat dan keluarga IPv4 atau IPv6 unicast yang valid.

  • InterfaceLuid atau InterfaceIndex
    Anggota ini digunakan dalam urutan yang tercantum sebelumnya. Jadi jika InterfaceLuid ditentukan, anggota ini digunakan untuk menentukan antarmuka. Jika tidak ada nilai yang ditetapkan untuk anggota InterfaceLuid (nilai anggota ini diatur ke nol), anggota InterfaceIndex selanjutnya digunakan untuk menentukan antarmuka.

Jika onLinkPrefixLength anggota struktur MIB_UNICASTIPADDRESS_ROW yang ditunjukkan parameter Baris diatur ke 255, SetUnicastIpAddressEntry mengatur properti alamat IP unicast sehingga anggota OnLinkPrefixLength sama dengan panjang alamat IP. Untuk alamat IPv4 unicast, OnLinkPrefixLength diatur ke 32. Untuk alamat IPv6 unicast, OnLinkPrefixLength diatur ke 128. Jika pengaturan ini akan mengakibatkan subnet mask yang salah untuk alamat IPv4 atau awalan tautan yang salah untuk alamat IPv6, driver harus mengatur anggota ini ke nilai yang benar sebelum memanggil SetUnicastIpAddressEntry.

SetUnicastIpAddressEntry mengabaikan DadState, ScopeId, dan CreationTimeStamp anggota struktur MIB_UNICASTIPADDRESS_ROW yang ditunjuk parameter Baris. Anggota ini diatur oleh tumpukan jaringan dan tidak dapat diubah dengan menggunakan fungsi setUnicastIpAddressEntry. Anggota ScopeId secara otomatis ditentukan oleh antarmuka tempat alamat ditambahkan.

Persyaratan

Platform target

Universal

Versi

Tersedia di Windows Vista dan versi sistem operasi Windows yang lebih baru.

Header

Netioapi.h (termasuk Netioapi.h)

Perpustakaan

Netio.lib

IRQL

< DISPATCH_LEVEL

Lihat juga

CreateUnicastIpAddressEntry

DeleteUnicastIpAddressEntry

GetUnicastIpAddressEntry

GetUnicastIpAddressTable

InitializeUnicastIpAddressEntry

MIB_UNICASTIPADDRESS_ROW

MIB_UNICASTIPADDRESS_TABLE

NotifyUnicastIpAddressChange