There is a special behavior with the TWAIN driver (GUI opened and visible, latest version).
When I try to scan with the GUI opened, it seems to work, but as soon as I have a jam in the feeder, here’s what happens:
– the scanner stops feeding (that’s ok)
– the software receive a ‘no more images’ in the transfer (buffered/memory) loop
– if I unjam the scanner, as soon as the scanner reset its feeder I receive something like a MSG_CLOSEDSREQ or MSG_CLOSEDSOK message.
The problem I have with these messages is that my software handles them similarly, like ‘end of scan session’.
So I never know when a jam occurs with this scanner (Kodak, Fujitsu, Panasonic and Inotec have a very different behavior when a jam occurs, and I have no problem with them, their GUI intercepts and handles everything).
Is there a way to know when a jam occurs, when could I receive a TWCC_PAPERJAM ?
When can I call DAT_DEVICEEVENT/MSG_GET to be sure to know that a jam occurs before I receive the MSG_CLOSEDSREQ ?
Should I modify the message loop to accept a new MSG_XXX so I can call DAT_DEVICEEVENT/MSG_GET ?
How to use these events efficiently ?
Here’s what I saw concerning the DEVICEEVENT :
No one implements this nice feature except Kodak, and the drivers (i200, i600) just send back an empty list of event … doesn’t help but why not …
Fujitsu, Panasonic and Canon simply return nothing (FAILURE/UNSUPPORTED).
So there is no way today to be aware of what happened during the scanning session.