Bagikan melalui


Fungsi SnmpGetVb (winsnmp.h)

[SNMP tersedia untuk digunakan dalam sistem operasi yang ditentukan di bagian Persyaratan. Ini mungkin diubah atau tidak tersedia dalam versi berikutnya. Sebagai gantinya, gunakan Manajemen Jarak Jauh Windows, yang merupakan implementasi Microsoft dari WS-Man.]

Aplikasi WinSNMP memanggil fungsi SnmpGetVb untuk mengambil informasi dari daftar pengikatan variabel. Fungsi WinSNMP ini mengambil nama variabel dan nilai terkait dari entri pengikatan variabel yang ditentukan oleh parameter indeks .

Sintaks

SNMPAPI_STATUS SNMPAPI_CALL SnmpGetVb(
  [in]  HSNMP_VBL  vbl,
  [in]  smiUINT32  index,
  [out] smiLPOID   name,
  [out] smiLPVALUE value
);

Parameter

[in] vbl

Tangani ke daftar pengikatan variabel untuk diambil.

[in] index

Menentukan variabel bilangan bulat panjang yang tidak ditandatangani yang mengidentifikasi entri pengikatan variabel untuk diambil. Variabel ini berisi posisi entri pengikatan variabel, dalam daftar pengikatan variabel.

Nilai yang valid untuk parameter ini berada dalam rentang dari 1 hingga n, di mana 1 menunjukkan entri pengikatan variabel pertama dalam daftar pengikatan variabel, dan n adalah jumlah total entri dalam daftar. Untuk informasi tambahan, lihat bagian Keterangan berikut ini.

[out] name

Penunjuk ke struktur smiOID untuk menerima nama variabel entri pengikatan variabel.

[out] value

Penunjuk ke struktur smiVALUE untuk menerima nilai yang terkait dengan variabel yang diidentifikasi oleh parameter nama .

Jika fungsi berhasil, anggota sintaks struktur yang ditujukan oleh parameter nilai dapat menjadi salah satu jenis data sintaks berikut. Untuk informasi tambahan, lihat RFC 1902, "Struktur Informasi Manajemen untuk Versi 2 dari Protokol Manajemen Jaringan Sederhana (SNMPv2)."

Jenis data sintaks Makna
SNMP_SYNTAX_INT
Menunjukkan variabel bilangan bulat bertanda tangan 32-bit.
SNMP_SYNTAX_OCTETS
Menunjukkan variabel string oktet yang merupakan data biner atau tekstual.
SNMP_SYNTAX_NULL
Menunjukkan nilai NULL .
SNMP_SYNTAX_OID
Menunjukkan variabel pengidentifikasi objek yang merupakan nama yang ditetapkan dengan maksimum 128 subidentifier.
SNMP_SYNTAX_INT32
Menunjukkan variabel bilangan bulat bertanda tangan 32-bit.
SNMP_SYNTAX_IPADDR
Menunjukkan variabel alamat Internet 32-bit. Jika format trap PDU SNMPv1 digunakan untuk mewakili alamat IPv6, nilai ini adalah 0.0.0.0.
SNMP_SYNTAX_CNTR32
Menunjukkan variabel penghitung yang meningkat hingga mencapai nilai maksimum (2^32) – 1.
SNMP_SYNTAX_GAUGE32
Menunjukkan variabel pengukur yang merupakan bilangan bulat non-negatif yang dapat meningkat atau berkurang, tetapi tidak pernah melebihi nilai maksimum.
SNMP_SYNTAX_TIMETICKS
Menunjukkan variabel penghitung yang mengukur waktu dalam seratus detik, hingga mencapai nilai maksimum (2^32) – 1. Ini adalah bilangan bulat non-negatif yang relatif terhadap peristiwa timer tertentu.
SNMP_SYNTAX_OPAQUE
Jenis ini menyediakan kompatibilitas mundur, dan tidak boleh digunakan untuk jenis objek baru. Ini mendukung kemampuan untuk meneruskan sintaks Abstract Syntax Notation One (ASN.1) arbitrer.
SNMP_SYNTAX_CNTR64
Menunjukkan variabel penghitung yang meningkat hingga mencapai nilai maksimum (2^64) – 1.
SNMP_SYNTAX_UINT32
Menunjukkan variabel bilangan bulat yang tidak ditandatangani 32-bit.
SNMP_SYNTAX_NOSUCHOBJECT
Menunjukkan bahwa agen tidak mendukung jenis objek yang sesuai dengan variabel.
SNMP_SYNTAX_NOSUCHINSTANCE
Menunjukkan bahwa instans objek tidak ada untuk operasi.
SNMP_SYNTAX_ENDOFMIBVIEW
Menunjukkan aplikasi WinSNMP mencoba mereferensikan pengidentifikasi objek yang berada di luar akhir pohon MIB yang didukung agen.

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan adalah SNMPAPI_SUCCESS.

Jika fungsi gagal, nilai yang dikembalikan adalah SNMPAPI_FAILURE. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi SnmpGetLastError. Fungsi SnmpGetLastError dapat mengembalikan salah satu kesalahan berikut.

Menampilkan kode Deskripsi
SNMPAPI_NOT_INITIALIZED
Fungsi SnmpStartup tidak berhasil diselesaikan.
SNMPAPI_ALLOC_ERROR
Terjadi kesalahan selama alokasi memori.
SNMPAPI_INDEX_INVALID
Parameter indeks tidak valid.
SNMPAPI_VBL_INVALID
Parameter vbl tidak valid.
SNMPAPI_OTHER_ERROR
Terjadi kesalahan yang tidak diketahui atau tidak terdefinis.

Keterangan

Tiga jenis sintaks terakhir menjelaskan kondisi pengecualian di bawah kerangka kerja SNMP versi 2C (SNMPv2C).

Fungsi SnmpGetVb mengembalikan nama variabel entri pengikatan variabel dalam struktur yang ditujukkan oleh parameter nama . Ini mengembalikan nilai terkait variabel dalam struktur yang ditujukkan oleh parameter nilai .

Pada input, fungsi SnmpGetVb mengabaikan anggota struktur smiOID dan smiVALUE yang masing-masing diacu oleh parameter nama dan nilai . Implementasi Microsoft WinSNMP menimpa anggota jika fungsi berhasil diselesaikan.

Nilai yang valid untuk aplikasi WinSNMP yang akan digunakan untuk parameter indeks adalah sebagai berikut:

  • Nilai yang dikembalikan dari panggilan ke fungsi SnmpCountVbl
  • Bidang indeks kesalahan unit data protokol (PDU) SNMP_PDU_RESPONSE yang dikembalikan oleh panggilan ke fungsi SnmpRecvMsg
Aplikasi WinSNMP harus memanggil fungsi SnmpFreeDescriptor untuk membebaskan sumber daya yang dialokasikan untuk anggota ptr struktur smiOID yang ditujukkan oleh parameter nama . Aplikasi juga harus memanggil fungsi SnmpFreeDescriptor untuk merilis sumber daya yang dialokasikan untuk struktur smiVALUE yang ditujukkan oleh parameter nilai dalam kondisi berikut. Jika anggota nilai adalah smiOCTETS atau struktur smiOID , aplikasi harus memanggil SnmpFreeDescriptor untuk membebaskan sumber daya yang dialokasikan untuk struktur ini. Untuk informasi tambahan, lihat Konsep Manajemen Data WinSNMP.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header winsnmp.h
Pustaka Wsnmp32.lib
DLL Wsnmp32.dll

Lihat juga

SnmpCountVbl

SnmpFreeDescriptor

SnmpRecvMsg

Fungsi WinSNMP

Gambaran Umum API WinSNMP

smiOCTETS

smiOID

smiVALUE