' schrieb:Diese Geräte können in diverse Fehlerzustände kommen. Z.b. eine Übertemperatur. Fehler also, die man nicht verhindern kann.
Eine Übertemperatur ist kein Fehler, sondern ein Zustand, der
explizit beachtet werden muss. Eine Übertemperatur kann man mit ganz normalen Funktionen handeln.
Zitat:Die Exception sind in meinem Fall keine unvorhersehbare Fehler, sondern einfach Fehler die im System auftretten können.
Aber doch keine Fehler im System (z.B.) Klimaschrank !
Zitat:(Gem. meinem Kollegen ist das in der C#/.net Welt so üblich, oder fast ein muss!)
Naja, bisher programmiere ich nur in Win32 und in LabVIEW. Auch in Win32 könnte man Fehlerbehandlungen mit Exceptions machen. Ggf. würde das im Fehlerfall auch sehr einfach sein. Nur: Exceptions haben was von brachialer Gewalt. Damit kann man die ganze Unterprogramm-Hierarchie mit einem "Rücksprung" aushebeln. Sowas macht man einfach nicht.
Zitat:Wie ich aus euren Antworten herauslesen, ist es von LabVIEW (oder grundsätzlicht?) nicht so angedacht, dass man ein Fehlerhandlig mit Exceptions löst.
Ich bin der Meinung, dass man eine derartige Fehlerbehandlung grundsätzlich nicht mit Exceptions machen sollte.
Zitat:Sondern eher, dass wenn man einen unvorhergesehen Fehler mit dem eigenen Fehlerhandlich nicht abgefangen hat,
man durch die Exception darauf aufmerksam gemacht wird um dies noch nachzuholen.
Eher so.
Oder z.B. wenn plötzlich die serielle Schnittstelle als solche nicht mehr vorhanden ist.
Mir fällt noch was ein: Eine Exception kann man als "Selbstschutzmechnismus" auffassen. Würde das Ausführen einer Methode innerhalb eines Moduls unmöglich sein, so kann das Modul diese Situation mit einer Exception umgehen - sofern es nicht möglich ist, diese Sitiation nicht doch mit einer spezifischen Methode abzuarbeiten (z.B. einer entsprechenden Rückmeldung). Der Dividierbefehl z.B. muss eine Exception machen, wenn der Divisor Null ist: Durch Null darf er nämlich nicht teilen, Möglichkeiten der Fehlerrückmeldung hat er nicht.
Eigentlich ist es eher eine Philosophiefrage, wo man die Grenze zieht zwischen Exception (= nachlaufende Fehlerbehandlung) und eigener (vorlaufender) Fehlervermeidung.
Zum Schluss noch was:
Wenn du doch die Methoden (und Felder etc.) der Klasse ".Net-Exception" haben willst, warum fragst du dann in einem LabVIEW-Forum für LabVIEW-Anwender? Wäre da nicht ein .Net-Forum besser: Deine DLL soll ja die Exception in .Net machen/auswerten und daraus einen Error-Cluster für LV machen.