SnmpDecodeMsg-Funktion (winsnmp.h)
[SNMP ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt "Anforderungen" angegeben sind. Es kann in nachfolgenden Versionen geändert oder entfernt werden. Verwenden Sie stattdessen die Windows-Remoteverwaltung, die Microsoft-Implementierung von WS-Man.]
Die WinSNMP SnmpDecodeMsg-Funktion decodiert eine codierte SNMP-Nachricht in ihre Komponenten. Diese Funktion führt die entgegengesetzte Aktion der WinSNMP SnmpEncodeMsg-Funktion aus.
Syntax
SNMPAPI_STATUS SNMPAPI_CALL SnmpDecodeMsg(
[in] HSNMP_SESSION session,
[out] LPHSNMP_ENTITY srcEntity,
[out] LPHSNMP_ENTITY dstEntity,
[out] LPHSNMP_CONTEXT context,
[out] LPHSNMP_PDU pdu,
[in] smiLPCOCTETS msgBufDesc
);
Parameter
[in] session
Handle mit der WinSNMP-Sitzung. Dieser Parameter ist erforderlich. Weitere Informationen finden Sie im abschnitt "Hinweise".
[out] srcEntity
Zeiger auf eine Variable, die ein Handle auf die Quellverwaltungsentität empfängt. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".
[out] dstEntity
Zeiger auf eine Variable, die ein Handle auf die Zielverwaltungsentität empfängt. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".
[out] context
Zeiger auf eine Variable, die ein Handle auf den Kontext (eine Gruppe verwalteter Objektressourcen) empfängt, den die Zielverwaltungsentität steuert.
[out] pdu
Zeiger auf eine Variable, die ein Handle auf die SNMP-Protokolldateneinheit (PDU) empfängt.
[in] msgBufDesc
Zeiger auf eine smiOCTETS-Struktur , die die SNMP-Nachricht enthält, die in ihre Komponenten decodiert werden soll. Das len-Element der -Struktur gibt die maximale Anzahl von Bytes an, die verarbeitet werden sollen. das ptr-Element verweist auf die codierte SNMP-Nachricht.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert die Anzahl der decodierten Bytes. Dieser Wert kann gleich oder kleiner als der len-Member der smiOCTETS-Struktur sein, auf die vom msgBufDesc-Parameter verwiesen wird.
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 Speicherzuordnung ist ein Fehler aufgetreten. |
|
Der Sitzungsparameter ist ungültig. |
|
Ein oder beide Entitätsparameter sind ungültig. |
|
Der Kontextparameter ist ungültig. |
|
Der pdu-Parameter ist ungültig. |
|
Die Länge des Ausgabepuffers reicht nicht aus. Es wurden keine Ausgabeparameter erstellt. |
|
Das SNMP-Nachrichtenformat im Puffer, das durch den msgBufDesc-Parameter angegeben wird, ist ungültig. Es wurden keine Ausgabeparameter erstellt. |
|
Ein unbekannter oder nicht definierter Fehler ist aufgetreten. |
Hinweise
Die Microsoft WinSNMP-Implementierung gibt den Wert null in den Parametern srcEntity und dstEntity zurück, wenn eine Anwendung eine SNMPv1- oder SNMPv2C-Nachricht an die SnmpDecodeMsg-Funktion sendet. Dies liegt daran, dass das Nachrichtenformat keine Adressinformationen enthält, die zum Erstellen von WinSNMP-Entitätsressourcen erforderlich sind.
Die Microsoft WinSNMP-Implementierung weist der WinSNMP-Anwendung Ressourcen zu, da die SnmpDecodeMsg-Funktion erfolgreich aufgerufen wurde. Es wird empfohlen, dass die WinSNMP-Anwendung einzelne Ressourcen mit der WinSNMP-Funktion freigibt, die der Ressource entspricht. Weitere Informationen finden Sie unter Freigeben von WinSNMP-Deskriptoren und WinSNMP Datenverwaltung Concepts.
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 |