Bagikan melalui


Fungsi SetUnicastIpAddressEntry

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

Sintaks

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:

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER

Parameter yang tidak valid diteruskan ke fungsi. Kesalahan ini dikembalikan jika penunjuk NULL diteruskan dalam parameter Baris , anggota Alamat dari struktur MIB_UNICASTIPADDRESS_ROW yang ditunjuk parameter Baris tidak diatur ke alamat IPv4 atau IPv6 unicast yang valid, atau anggota InterfaceLuid dan InterfaceIndex dari 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 anggota InterfaceLuid atau InterfaceIndex dari 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 di anggota Alamat struktur MIB_UNICASTIPADDRESS_ROW yang ditunjuk parameter Baris , atau jika tidak ada tumpukan IPv6 yang terletak di komputer lokal dan alamat IPv6 ditentukan di anggota Alamat .

Lainnya

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

Keterangan

Fungsi GetUnicastIpAddressEntry biasanya 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 fungsi InitializeUnicastIpAddressEntry untuk menginisialisasi anggota entri struktur MIB_UNICASTIPADDRESS_ROW dengan nilai default sebelum membuat perubahan. Namun, driver biasanya menyimpan anggota 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 anggota OnLinkPrefixLength dari struktur MIB_UNICASTIPADDRESS_ROW yang ditunjuk 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 anggota DadState, ScopeId, dan CreationTimeStamp dari 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 yang lebih baru dari sistem operasi Windows.

Header

Netioapi.h (termasuk Netioapi.h)

Pustaka

Netio.lib

IRQL

< DISPATCH_LEVEL

Lihat juga

CreateUnicastIpAddressEntry

DeleteUnicastIpAddressEntry

GetUnicastIpAddressEntry

GetUnicastIpAddressTable

InitializeUnicastIpAddressEntry

MIB_UNICASTIPADDRESS_ROW

MIB_UNICASTIPADDRESS_TABLE

NotifyUnicastIpAddressChange