(Visual C++ .net) ArgumentOutOfRangeException auf manchen Rechnern



  • Hallo miteinander,

    ich habe schon einige Stunden eine Lösung für mein Problem gesucht allerdings noch keine Lösung gefunden. Vielleicht hat jemand eine Idee.

    Ich habe ein Programm mit Visual C++ .net geschrieben. Es läuft auch wunderbar...auf den meisten Rechner. Auf manchen PCs erzeugt es eine eigenartige Fehlermeldung:
    (...)
    System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
    Paramter name: length
    (...)

    Für mich macht die Meldung keinen Sinn, denn sollte es sich um einen Programmierfehler handeln, käme der Fehler schließlich auf jedem PC. Ich vermute irgendein Problem mit der .net-Umgebung.

    Über jedwede Ratschläge würde ich mich freuen?

    Gruß,
    Stefan



  • Für mich sieht es so aus, als ob Du was falsch gemacht hast... Geb Dir doch noch den "StackTrace" aus, dann siehst Du auch wo Du was falsch gemacht hast...
    Du hast vermutlich auf ein "String" mittels "s[index]" zugegriffen, der String ist aber gar nicht so lang...



  • Das würde ich auch normalerweise so sehen, allerdings würde dann das Programm bei der identischen Vorgehensweise auf allen Rechner/bei allen Usern nicht laufen. Einen Programmierfehler kann ich also zu 99,9% ausschließen. Die Fehlermeldung scheint offensichtlich nicht viel mit dem echten Problem zu tun zu haben.

    Ich habe das Problem aber gestern noch ein wenig eingegrenzt. Es scheint nicht am PC zu liegen, sondern muss irgendwie mit den Userrechten u.ä. zusammenhängen.

    User X meldet sich in Windows an und Programm funktioniert nicht.
    User Y meldet sich auf dem selben Rechner an und es geht.
    User X ist angemeldet, das Programm wird vom Admin ausgeführt und es funktioniert.

    Gibt es evt. irgendwelche Kompatibilitätsprobleme zwischen Visual C++/.NET und anderen Programmen.



  • Mit größter wahrscheinlichkeit hängt es nicht an der Hardware sondern an den Einstellungen... hast Du schon den Callstack Dir ausgeben lassen?



  • Debugger. ⚠


Anmelden zum Antworten