Kann nicht bewerten Ausdruck, da der aktuelle thread in einem stack overflow state" in die auskommentierte Zeile

Erstellte ich ein c# SNMP-Anwendung mit dem SNMP-Bibliothek.

Aber dann bekomme ich eine Fehlermeldung "Nicht bewerten Ausdruck, da der aktuelle thread in einem stack-überlauf-Zustand" auf die auskommentierte Zeile.

try
        {
            UdpAddress udp = new UdpAddress(args[1]); //error occur at this line
            SnmpVersion ver = SnmpVersion.SNMPv1;
            //some other snmp codes
        }

diese codes deklarieren Sie die variable args:

public Hashtable getValues(SNMPObject[] SNMPObjects)
    {

        int nbrArgs = 5 + 2 * SNMPObjects.Length;
        string[] args = new string[nbrArgs];
        args[0] = "get";
        args[1] = this.getIPAddress();
        args[2] = "-Dl0"; //don't make debug
        args[3] = "-c" + this.getCommunityRead(); //community read
        args[4] = "-C" + this.getCommunityWrite(); //community write
        int i = 5;
        foreach (SNMPObject mySNMPObject in SNMPObjects)
        {
            args[i] = "-o";
            args[i + 1] = mySNMPObject.getOID();
            i = i + 2;
        }

        //lancer la requête
        Hashtable htResult = Manager.makeOrder(args);
        return htResult;
    }

wenn ich debug durch die Linie, die args[] übergeben:

[0] = "get"  
[1] = "10.0.0.120"  
[2] = "-Dl0"  
[3] = "-cpublic"  
[4] = "-Cpublic"  
[5] = "-o"  
[6] = "1.3.6.1.2.1.1.5.0"  
[7] = "-o"  
[8] = "1.3.6.1.2.1.2.2.1.16.1"
  • Problem kann man auf args. Können Sie nach dem code, wo Sie erklären args-variable?
  • bereits Bearbeiten meine Frage, korrigieren Sie mich, wenn im falschen.
  • Versuchen Sie dieses, UdpAddress udp = new UdpAddress("10.0.0.120"); zeigt den gleichen Fehler?
  • ja,ich habe versucht. Immer noch die gleichen Fehler.
  • Das problem ist auf die DLL. Der Konstruktor wahrscheinlich ist es nicht ok (oder das Vermögen, mithilfe)
  • Prüfen Sie das codeproject.com/Articles/12993/...
  • Die Bibliothek ist tot und nicht aufrechterhalten (die code-Basis ist schwer zu pflegen, zu). Wenn Sie wollen, zu tun SNMP-Entwicklung ernsthaft, wechseln Sie zu anderen frameworks, #SNMP oder SNMP#NET.

InformationsquelleAutor Ren | 2014-05-08
Schreibe einen Kommentar