DataWedgeAPI on WinCE Device

C Chris Stanyon 3 years 4 months ago
36 1 0

Hi,
 
I'm in the process of developing a small app for the Motorola MC2100 handheld devices, and needed a way to programmatically turn off DataWedge (manually doing it in the Control Panel is not an option!) and use the Symbol.Barcode libraries (from EMDK 2.8) for collecting scanned data. I'm using VS 2008 / C# / Net 3.5
Looking around I found that I needed the DataWedgeAPI, so I downloaded and installed the MotoRola DataWedge Toolkit for 3.5 and added a reference to DataLogicAPI.tlb.
 
It all seemed to work OK during debugging and testing, however when I come to package my application in a CAB, the installer is identifying that the DataWedgeAPI has a dependency on the full NET version of mscorlib.dll instead of the Compact Framework one. It also has a dependency on stdole.dll which it's trying to pull from the full framework's GAC on my development PC
 
This means that my application is now dependent on a 4.5mb full framework library and tries to ship that to a mobile device, causing a conflict with the compact version of mscorlib.dll
 
Is there a version of the DataWedge API that is designed specifically for the Compact Framework, without these full framework dependencies. If not, is there a way around it - my 260k app has suddenly grown to to nearly 5mb!
 
Appreciate any help and advice on this
 
Chris

Please Register or Login to post a reply

1 Replies

E Efkan YILMAZ

First I would question whether you really need the Datawedge API in your app.  If you just need Datawedge to be disabled when your app is running, you could create a new datawedge profile with your app associated with it, disable that profile, and then when your app is running, datawedge will be disabled.

In datawedge config, go to Advanced/Profiles/Add new/  Make up a profile name for your app, then hit save.  Then in that profile, uncheck enabled, and in the applications tab, add your exe name, hit enter, then the zero key a bunch of times to back out of the config utility.  You should see that when your app comes up, datawedge disables itself, so your app should be able to control the scanner.

If you really do need the datawedge api, try building the sample app that comes with that.  I just built it, it works on a device, and here's what I ended up with in my bin folder.
10/23/2014  10:47 AM            11,776 CSharpDWAPISample.exe
10/23/2014  10:47 AM            26,112 CSharpDWAPISample.pdb
10/23/2014  10:47 AM            24,576 Interop.DataWedgeLib.dll

CONTACT
Can’t find what you’re looking for?