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.


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

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?  

Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

charles_gilleyAuthor Commented:
To close this out, I appear to have a slightly braindead scanner unit.  Customer reports no problems on his device.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.