Guten Tag allerseits.
Der Mann, der die meisten Fehler abfangen will, ist (leider) wieder da ... Manchmal passiert es ja, dass ein Stecker durch Unachtsamkeit rausgezogen wird (wer noch nie in einem Netzkabel hängen geblieben ist ... ). Deshalb habe ich das Gleiche (am USB Stecker bei laufendem Programm) mit einer Versuchsanordnung am IOW24 ausprobiert : anscheinend ist nach dem Wiedereinstecken kein Zugriff mehr möglich. So scheint es mir ratsam, nach einem "falsch" erfolgten Zugriff (Rückmeldungswert ungleich 3) zum Beispiel bei Write ein Close, ein erneutes Open, ein erneutes Write auszuführen (anscheinend klappt es dann meistens) und erst bei anhaltendem Error eine Fehlermeldung auszugeben (dann wäre wahrscheinlich eine Unterbrechung in der Leitung ... oder der IOW hätte den Geist aufgegeben). Liege ich da richtig ? Anscheinend ist kein "Dispose" (bei Delphi) des Handle-Pointers notwendig, das Close besorgt alles selber ?
Danke für eine eventuelle zusätzliche "Korrektur" ...
Stecker raus, Stecker rein ...
Moderator: Guido Körber
- Christoph Jung
- Posts: 670
- Joined: Sun Oct 08, 2006 3:43 pm
- Location: Germany / Berlin
- Contact:
Re: Stecker raus, Stecker rein ...
Es muss kein CloseDevice durchgeführt werden um den IO-Warrior wieder nutzen zu können. Einfach OpenDevice() aufrufen und dann sollte es laufen. Zusätlich könnte man auf die Windows-Message WM_DEVICECHANGE reagieren um das abziehen und/oder anstecken metgeteilt zu bekommen.
Re: Stecker raus, Stecker rein ...
Besten Dank für diese Antwort ; ich werde aber trotzdem den "Close" Befehl in meinem Kode lassen, nach dem Motto : "Nützt es nichts, so schadet es nichts" ...
Thema abgeschlossen !
Thema abgeschlossen !