PowerSNMP for .NET
Walk(String,String) Method
Example 




The root OID.
The IP Address in dot notation or hostname of the agent managing the table.
Performs a series of blocking requests to walk a MIB using SNMP version 1.
Syntax
Public Overloads Function Walk( _
   ByVal rootOid As String, _
   ByVal agentNameOrAddress As String _
) As VariableList
Dim instance As SnmpSocket
Dim rootOid As String
Dim agentNameOrAddress As String
Dim value As VariableList
 
value = instance.Walk(rootOid, agentNameOrAddress)

Parameters

rootOid
The root OID.
agentNameOrAddress
The IP Address in dot notation or hostname of the agent managing the table.

Return Value

A VariableList under rootOid.
Remarks

This method walks the MIB by sending a GetNextMessage for each element under the root oid. The method blocks and will not return until the complete subtree has been retrieved or any single request exceeds the value of the Socket.ReceiveTimeout property. The time required to complete this request is a function of the number of available instance Id's (IID's) under the root oid.

The remotePort defaults to the "well-known" agent port 161 when the Transport is set to Transport.UDP or 10161 when the Transport is Transport.DTLS. The community defaults to "public".

Example
The following example demonstrates how to walk a MIB and display the response variables.
private void button1_Click(object sender, EventArgs e)
{
    //Perform MIB walk on a worker thread
    manager1.Start(walkMib, manager1.Mib.GetByNodeName(NodeName.system).Oid);
}

private void walkMib(SnmpSocket managerSocket, object state)
{
    //The state contains the OID to walk (in this case, the system group)
    string oid = state as string;

    //Walk the MIB from the specified root OID
    VariableList variables = managerSocket.Walk(oid, myAgentAddress);

    //Marshal variables returned to the UI thread using the Walk event
    manager1.Marshal(oid, variables, "", null);
}

private void manager1_Walk(object sender, WalkEventArgs e)
{
    //Populate a treeview control with the returned variables
    e.Variables.Populate(tvwVariables, e.Oid, manager1.Mib);
}
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
    'Perform MIB walk on a worker thread
    manager1.Start(AddressOf walkMib, manager1.Mib.GetByNodeName(NodeName.system).Oid)
End Sub

Private Sub walkMib(ByVal managerSocket As SnmpSocket, ByVal state As Object)
    'The state contains the OID to walk (in this case, the system group)
    Dim oid As String = TryCast(state, String)

    'Walk the MIB from the specified root OID
    Dim variables As VariableList = managerSocket.Walk(oid, myAgentAddress)

    'Marshal variables returned to the UI thread using the Walk event
    manager1.Marshal(oid, variables, "", Nothing)
End Sub

Private Sub manager1_Walk(ByVal sender As Object, ByVal e As WalkEventArgs)
    'Populate a treeview control with the returned variables
    e.Variables.Populate(tvwVariables, e.Oid, manager1.Mib)
End Sub
See Also

Reference

SnmpSocket Class
SnmpSocket Members
Overload List

6.1.1.2
PowerSNMP for .NET Documentation Version 7.0
© 2023 Dart Communications. All Rights Reserved.
Send comments on this topic