Laden...

ArgumentNullException

Erstellt von SeCuRiiTaS vor 11 Jahren Letzter Beitrag vor 11 Jahren 3.918 Views
Thema geschlossen
S
SeCuRiiTaS Themenstarter:in
108 Beiträge seit 2012
vor 11 Jahren
ArgumentNullException

Hallo zusammen,
ich krieg momentan bei meinem Programm die Krise...

bei den Kollegen öffnet sich beim Programmstart folgender Fehler:

Fehlermeldung:
************** Ausnahmetext **************
System.ArgumentNullException: Der Wert darf nicht NULL sein.
Parametername: value
bei System.String.IndexOf(String value, Int32 startIndex, Int32 count, StringComparison comparisonType)
bei Swyx.frmSwyxClass.FindRecursive(TreeNode treeNode, String search, String status)
bei Swyx.frmSwyxClass.SetStatusIconAtTreeViewOrganigramm(String speedDialName, String statusParameter)
bei Swyx.frmSwyxClass.LineMgr_DispOnLineMgrNotification(Int32 msg, Int32 param)
bei Swyx.frmSwyxClass.<>c__DisplayClass3e.<LineMgr_DispOnLineMgrNotification>b__36()

Scheint wohl der Fehler zu sein, dass ich ein IndexOf mache und der Prüfwert (=value) NULL ist.

Ich habe ganze drei Stellen gefunden wo ich IndexOf prüfe:

if (tnCurr.Text.ToString().IndexOf(strText, StringComparison.InvariantCultureIgnoreCase) >= 0)

und je zwei Mal

int index = parent.Nodes.IndexOf(node);

Ersteres hab ich mit

if (strText != null)

abgefangen.

Die anderen beiden habe ich mit try-catch umschlossen.

Leider tritt der Fehler noch immer auf und ich hab absolut keine Ahnung, wieso?
Habt ihr da evtl. noch Tipps?

Vielen Dank.

Mit freundlichen Grüßen,
SeCuRiiTaS

B
357 Beiträge seit 2010
vor 11 Jahren

Das liegt daran, dass bei Textboxen der Text nicht NULL ist, sondern "", also ein String.Empty. Deine Bedigung wird also nicht erfüllt. Prüfe auf einen leeren String oder auf die Länge des Strings (text.Length > 0).

C
2.122 Beiträge seit 2010
vor 11 Jahren

Der StackTrace sagt, es geth um String.IndexOf. parent.Nodes.IndexOf(node); sieht nicht nach einem String aus, dann wirds schon die andere Funktion sein.
Einen Leerstring darf man allerdings schon übergeben. Irgendwas scheint also trotzdem nicht zu stimmen.
Passt der StacKTrace zu dem was du gefunden hast?
Haben die Kollegen tatsächlich die letzte compilierte Version?

5.742 Beiträge seit 2007
vor 11 Jahren

Hallo SeCuRiiTaS,

siehe [FAQ] NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt - nimm einen Debugger (bzw. ein ordentliches Errorlogging) und du findest heraus, wo genau das Problem liegt.

Damit sollte alles gesagt sein ==> Geschlossen

Thema geschlossen