I have a software application which is currently a win forms application using an embedded IE web browser control. The win forms application provides access to an attached credit card machine and cash drawer to the web site running in the IE web control. Its does this by creating JavaScript objects in the IE web browser control which the web applications calls to do operations such as perform a credit card swipe or open a cash drawer. Those js objects are mapped to methods in the win forms application which then interacts with the devices. Its a pretty cool solution except that the embedded IE web control lacks all of the great development tools of a standard web browser window. So...

I want to move the web application to being used in a normal web browser window (sticking with IE is fine for this client) while still having access to the credit card machine and the cash drawer. So my question is this... What solution is best or even possible?

  • Active X Control - I do not really like this option
  • Java Applet
  • Flash
  • Create an IE Extension - with an IE extension is it possible to do something like we are doing with our current solution? - Preferred option if possible

Does anyone have any experience with this or any ideas? Thank you very much for your help!

  • 4
    why IE? Do you need to be in a browser for some reason? – Ampt Feb 6 '14 at 18:10
  • 2
    The browser could just make a ajax callback to a local service that works against the hardware. Though at that point, there's little benefit to go along with the absurd risks in putting it in the browser. – Telastyn Feb 6 '14 at 18:25
  • 1
    Not seeing why this needs to be browser based. Sounds like it should have been a full, non hybrid desktop app from the beginning. – GrandmasterB Feb 6 '14 at 19:30
  • 1
    @EricW.Greene you get into significant issues when you try doing a point of sale system and handling payment cards. I would strongly suggest that you review the PCI DSS requirements. In particular sections 1, 4, 5, 6.5, and Appendix A... though don't skimp on any of them. There's things in this design that are making me feel uneasy about the design itself and exposing the CDE to potential attacks. A POS system over the web just feels like a wrong design. There are better approaches to application updates than webapps. – user40980 Feb 7 '14 at 0:59
  • 2
    @EricW.Greene Its something you should pass up the chain and point out. The PCI DSS isn't exactly 'optional' as its the Data Security Standards set up by Visa, MasterCard and the like as the requirements for companies that process payment cards. Bad Things happen to companies that don't follow those standards and suffer from a data breach that would have been avoided if they had followed those standards. – user40980 Feb 7 '14 at 16:45

At a previous job I worked we used Silverlight for precisely this type of purpose, we would send out SmartCards and SD cards with devices that recorded data onto them. Users would go to our website where we had an upload section which was a little Silverlight control that accessed the local SmartCard reader or drives looking for an SD card that had our folder structure. The Silverlight control would read the data and send it to a SOAP web service we had hosted in the website.

It was quite effective and easy to work with and maintain, if I had to access local devices again from a website I would definitely look at this approach.

  • I like this solution! I will run it by the team and if we choose it I will mark it as the answer... Thanks! – Eric W. Greene Feb 6 '14 at 18:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.