Question : Problem: ScanAPI is hanging on the MC1000, time sensitive API?

I'm trying to wrap up a simple little barcode application for a Symbol MC1000 scanner.  I thought I had it working, but I've lost the magic in the cleanup sequence where I'm basically hanging the driver.  If I step very slowly through the code, all is fine.  Running at full speed, the application hangs in the SCAN_Disable call.

Code:

      dwResult = SCAN_Flush(hScanner);
      dwResult = SCAN_Disable(hScanner);    <---- hangs here, no return.
      SCAN_DeallocateBuffer(lpScanBuffer);
      SCAN_Close(hScanner);

Part 1 of the question is, does anyone have any knowledge and experience with this API regarding any timing race conditions?  For example, I would expect the device to be ready to _Disable if the flush completes.

Part 2 of the question: the scanning application itself can make use of a messages, events or a simple read/timeout approach.  I elected to use the SCAN_ReadLabelWait approach where I look for a read and if I timeout I just read again.  However, the code samples I have seen in the API make use of the event driven architecture.  Any recommendations as to the more robust solution?  

thanks

Answer : Problem: ScanAPI is hanging on the MC1000, time sensitive API?

To close this out, I appear to have a slightly braindead scanner unit.  Customer reports no problems on his device.
Random Solutions  
 
programming4us programming4us