.Net or eVB Opinions on Programming Handheld Symbol Barcode computers

5 years ago, I wrote an application for using a symbol 8146 using embedded visual basic.  Enjoyed the language and based a lot of the work on an example from symbol that I stole bits from - most notably the calls to the scanner.

Now I find that I need to do some work on this again.  I'd like an opinion on what direction should I pursue.  I have both a 8146 symbol unit that I can program in embedded vb and also have a 8846 that I understand is programmable in .net.  

The application is to walk up to a electrical heater in a plant, use the barcode reader to identify the heater,  and enter the temperature/load data into the handheld.  The handheld then downloads from the cradle into the Access data base to identify the operating conditions and the time when the readings were taken.

Question - Which language and environment would you recommend with regard to learning curve, future work and possible wireless.  Most important is that I would like to get some go by code and have you experience finding good examples from Symbol on this?  
Who is Participating?

Improve company productivity with a Business Account.Sign Up

n88nConnect With a Mentor Commented:
The thing that will hurt you the most in this case is the age of these terminals.  If the customer would upgrade the devices I to newer MC9090's you could then use vb.net 2008 and your life would be pretty easy.  Motorola has an SDK for communicating with the scan engine from the device.  So with the normal mobile framework and moto's sdk it would be pretty easy.  

These days I don't mind writing mobile apps in .net because the mobile framework has stabilized.  For a while MS was all over the place with the types of mobile platforms that were out there and it would cause app to be end of life because MS changed the environment.  Your devices are old enough to be in that danger range.

If they will not upgrade their handhelds then I would recommend using a mobile development tool called MCL.  


MCL is a great development tool because it is not device or OS specific.  There are some licensing issues and you and your customer will have to pony up a couple of bucks but it will make your life a lot easier.  

Each device needs a client license and that will install the MCL environment on your gun.  I checked there are clients for both of the guns you listed.  The great thing about MCL is that you can take the same code and load it to any device that has a client.  So you write one app and you can run the same code on both of the guns you have listed above.  Then down the road when they upgrade their guns to MC9090s you are already to go and there will be no need to change your code.

This feature makes MCL very nimble.

So beyond the client you will use a host communication app.  There are really two different favors of this piece(and yes you have to pay for this piece as well).  MCL makes an app called MCL-Link and one called MCL-Net.  One of these two applications are needed.

MCL-Link is used for batch applications where the user scans a bunch of stuff and walks back to a PC and docks the gun then hits a sync button.  You would need Link on any PC that the user wants to dock and sync from.

MCL-Net is used when the system is running live via wireless network and the user never needs to dock the gun for data transfer.  Usually only 1 license of Net is needed and it would sit on a server and it will handle all communications from any number of guns.

The benifit to the two pieces above it that all the hard work is already done for you and MCL handles all the heavy lifting.  Also if the customer wants to switch from Batch to wireless then just sell them MCL-Net and you are good to go.  The code written for the hand held does not care if you are running link or net.  

Finally you need MCL-Designer which is the application that you write the actual program in.  Again you have to pay for the designer app license.  You create the apps in a "Rapid application developent" environment so you don't actually "Code" anything.  Draw you forms and place controls.  Then from menus you select the commands needed.  Because I am used to writing MCL apps it would take me about 4 hours top to bottom to write the program you listed and have it fully functional.

In your above app, your customer has to buy a client for each gun.  Then they will need MCL-Link on any PC they want to sync from.  Then you the programmer will have to buy MCL-Designer.  Once you buy designer you can obviously use it for any future development projects.

That is the route I would take.  I mostly work in MCL due to the flexibility it provides and the speed at which i can create applications.  (BTW - no way to cheat the MCL licensing)

hope that helps.

DLJAuthor Commented:
Does not directly address my question, but an interesting perspective
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.