SnmpCreatePdu-Funktion (winsnmp.h)
[SNMP ist für die Verwendung in den im Abschnitt Anforderungen angegebenen Betriebssystemen verfügbar. Es kann in nachfolgenden Versionen geändert oder entfernt werden. Verwenden Sie stattdessen die Windows-Remoteverwaltung, die Microsoft-Implementierung von WS-Man.]
Die WinSNMP-Funktion SnmpCreatePdu erstellt und initialisiert eine SNMP-Protokolldateneinheit (PDU).
Syntax
HSNMP_PDU SNMPAPI_CALL SnmpCreatePdu(
[in] HSNMP_SESSION session,
[in] smiINT PDU_type,
[in] smiINT32 request_id,
[in] smiINT error_status,
[in] smiINT error_index,
[in] HSNMP_VBL varbindlist
);
Parameter
[in] session
Handle für die WinSNMP-Sitzung.
[in] PDU_type
Gibt einen PDU-Typ an, der den SNMP-Vorgang identifiziert. Dieser Parameter kann NULL oder einer der folgenden Werte sein. Wenn dieser Parameter NULL ist, stellt die Microsoft WinSNMP-Implementierung den PDU-Standardtyp SNMP_PDU_GETNEXT bereit. Der einzige Typ von Trap-PDU, die Sie mit einem Aufruf der SnmpCreatePdu-Funktion erstellen können, ist eine SNMPv2C-Trap-PDU.
[in] request_id
Gibt einen eindeutigen numerischen Wert an, den die WinSNMP-Anwendung zur Identifizierung der PDU bereitstellt. Wenn dieser Parameter NULL ist, weist die Implementierung einen Wert zu.
[in] error_status
Wenn der parameter PDU_type gleich SNMP_PDU_GETBULK ist, gibt dieser Parameter einen Wert für das non_repeaters Feld der PDU an. Für andere PDU-Typen gibt dieser Parameter einen Wert für das feld error_status der PDU an. Dieser Parameter kann NULL sein.
[in] error_index
Wenn der parameter PDU_type gleich SNMP_PDU_GETBULK ist, gibt dieser Parameter einen Wert für das max_repetitions Feld der PDU an. Für andere PDU-Typen gibt dieser Parameter einen Wert für das error_index Feld der PDU an. Dieser Parameter kann NULL sein.
[in] varbindlist
Handle für eine Struktur, die eine SNMP-Variablenbindungsliste darstellt. Dieser Parameter kann NULL sein.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert das Handle für eine neue SNMP-PDU.
Wenn die Funktion fehlschlägt, wird der Rückgabewert SNMPAPI_FAILURE. Rufen Sie SnmpGetLastError auf, um erweiterte Fehlerinformationen zu erhalten. Die SnmpGetLastError-Funktion kann einen der folgenden Fehler zurückgeben.
Rückgabecode | Beschreibung |
---|---|
|
Die SnmpStartup-Funktion wurde nicht erfolgreich abgeschlossen. |
|
Während der Speicherbelegung ist ein Fehler aufgetreten. |
|
Das Sitzungshandle ist ungültig. |
|
Der PDU-Typ ist ungültig. |
|
Die Variablenbindungsliste ist ungültig. |
|
Es ist ein unbekannter oder nicht definierter Fehler aufgetreten. |
Hinweise
Eine WinSNMP-Anwendung muss eine PDU erstellen, bevor sie die Funktionen SnmpSendMsg oder SnmpEncodeMsg aufruft.
Alle Parameter der SnmpCreatePdu-Funktion sind erforderlich. Alle Parameter mit Ausnahme des Sitzungsparameters können jedoch NULL sein. In diesem instance weist die neue PDU die folgenden Standardwerte auf.
Feld | Inhalte |
---|---|
PDU_type | SNMP_PDU_GETNEXT |
request_id | Die Implementierung generiert einen numerischen Wert. |
error_status | SNMP_ERROR_NOERROR |
error_index | 0 |
varbindlist | NULL |
Die Anwendung muss die SnmpFreePdu-Funktion aufrufen, um die Ressourcen freizugeben, die die SnmpCreatePdu-Funktion für die neue PDU zuweist.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winsnmp.h |
Bibliothek | Wsnmp32.lib |
DLL | Wsnmp32.dll |