SMDK v1.7 for .NET
[Part #: SMDK-M-1.07.03]
Contents
- Description
- Release Notes
- Components
- Installation
- Device Updates
- Usage Notes
- Known Issues
- Troubleshooting
Description
Thank you for selecting Motorola, Inc as your mobility solution tool provider. The SMDK for .NET provides developers with the tools necessary to develop C# and VB.NET managed applications for enterprise mobility devices from Motorola. These tools include class libraries, sample applications, and associated documentation. SMDK for .NET allows Microsoft .NET Compact Framework developers to programmatically access the enterprise mobility features on the devices. This developer kit is designed for use with Microsoft Visual Studio 2003, Visual Studio 2005 and Visual Studio 2008.
Although SMDK v1.7 for .NET has been designed to work with all Motorola mobile computers running Windows Mobile or Windows CE, it should only be used to develop applications for approved devices. Refer to the product download page for a complete listing of approved devices.
For the latest software updates, go to the Developer & Software Tools page on the Support Central Web site at:
For more information on Motorola enterprise mobility devices, please visit the Business Products web page at:
Thank you,
The Software Development Team
Back to Top
Release Notes
Version 1.7
- New support for Microsoft Visual Studio 2008. This version supports .NET Compact Framework 2.0 only. Support for version 3.5 will be included in the next version.
- Fixed the Symbol.Barcode assembly to successfully initiate on a device that does not support all symbologies.
Version 1.6
- New RFID2 class library and samples providing a common API for MC9090, RD5000 and XR400 RFID devices . The older RFID class library has been deprecated and will be removed in the future. Please start using the new RFID2 class library instead. This deprecation does not apply to the MC9060 RFID devices.
- New Device support for MC17, MK2200 and MC9090-RFID.
- New methods in Symbol.Barcode assembly to get and set all Barcode parameters on request.
- New support for KOREAN3OF5 and US4STATE barcode symbologies.
- New support for DPMMode and IlluminationMode features in Symbol.Barcode assembly.
- New Status event in Fusion.WLAN class for receiving notification when the radio is turned on or off.
- New sample application; PS_Sample, for demonstrating the capabilities of the MC17 device.
- Support for Fusion version 2.35.
- Enhanced Symbol.Barcode, Symbol.WirelessLAN assemblies for performance improvement.
- Enhanced Symbol.ResourceCoordination assembly for receiving notification for all triggers by using the new property TriggerID.ALL_TRIGGERS.
- Enhanced ResourceCoordination Sample to demonstrate the use of TriggerID.ALL_TRIGGERS.
- Enhanced FusionSample to use command mode only when necessary, allowing other Fusion applications run at the same time.
- Fixed Fusion.WLAN class to allow applications to initialize the Fusion object when the adapter power is off.
Version 1.5 - Patch1
- New capability to create multiple Fusion WLAN objects in one application.
- New capability to open the Fusion API in "COMMAND" or "STATISTICS" mode.
- New property "EventResolution" in WLAN to set the time interval for reporting Adapter.SignalQualityChanged events in adapters.
- Symbol.Fusion assembly no longer throws an exception when the device is resumed after suspension.
- Fixed the DPM reader params issue. The Barcode class will not attempt to disable the DPM feature, if it is already enabled by an external tool. However, the Barcode class still does not provide any mechanism to modify the DPM settings
- The Barcode class no longer throws an exception on certain devices where the SetReaderParams() method fails.
- Fixed Barcode design-time component so that it no longer fails at runtime.
Version 1.5
- New Fusion Class Library to manage and diagnose WLAN profiles and Adapters.
- New C# and VB.NET samples to illustrate the usage of the Fusion class library.
- New device support for WT4000 Wearable computer.
- New device support for VC5090.
- New VS2005 CAB Sample (Samples.Net.CAB) for mass deployment of Samples.
- Enhanced samples to support keyboard navigation (for non-touch screen devices).
- Enhanced samples to support multiple screen dimensions and orientations.
- Extended barcode assembly to support AZTEC and MICROQS decoder types.
- Extended ResourceCoordination assembly to allow enabing all triggers.
Version 1.4
- Enhanced RFID assembly to provide support for EPC Class1 Gen2 Tag type.
- Expanded help file with snippets of code samples to show the usage of RFID class library methods, properties and events.
- Improved RFIDSample2 sample application to demonstrate the usage of the RFID assembly including Gen2 features.
- Start menu links to SMDK Samples folders replaced by new Sample Launcher.
Version 1.3
- New MC9090 device support for Windows Mobile 5.0 and Windows CE 5.0.
- New MC9060 device support for Windows CE 5.0.
- New MC70 device support for Windows Mobile 5.0.
- New support for the final release of Microsoft Visual Studio 2005.
- New VS2005 toolbox components for developing barcode, imager and MagStripe (MSR) applications.
- New feature to detect events when the MSR hardware is physically removed.
- New feature to set the reader parameters of the scanner. One of the benefits of this feature is setting the "PicklistMode" property of the imager.
- Expanded help file with snippets of code samples to show the usage of class library methods, properties and events.
- Expanded help file to include a list of error codes returned by the Barcode and MagStripe devices.
- Enhanced Barcode and MagStripe class libraries to catch exceptions and notify the application.
- Enhanced MagStripe class to enable customizing the MSR device by configuring the fields "TrackFormat" and "ReservedChar".
- New documentation to illustrate the usage of sample applications.
- Fixed VB.NET samples to handle type casting warnings generated during compilation.
- Fixed RFID assembly to handle disposing and recreating the object multiple times.
- Fixed MSR to read data when set to the "Track3 Only" mode.
- Modified GenericReaderSample1 and GenericReaderSample2 samples to demonstrate the usage of the Symbol.Generic assembly to read the Barcode and MagStripe data.
- New VS2005 samples (CS_WANSample and VB_WANSample) demonstrating use of TAPI, RAS, Connection Manager and SMS features.
- New VS2005 samples (CS_CaptureAccumulateTransfer and VB_CaptureAccumulateTransfer) to demonstrate capturing scanned data, storing in SQLCE database and transmitting it to a host application.
- New MK1100 device support for Windows CE 4.2
- Fixed Barcode assembly to enable setting the Bookland code in the UPC/EAN Symbology
Version 1.2
- New device support for PPT8800 CE4.2, MC9000 CE4.2, MC3000 CE4.2 and 5.0, MC50, MC1000, MK2000 CE4.2, PDT8100w, PDT2800w, PDT8100w.
- New support for Composite and TLC39 symbologies.
- New samples (CS_ScanSample3 and VB_ScanSample3) demonstrating use of a single reader and reader data object on multiple forms.
- New support for raw data in the Barcode.ReaderData object. With IsText property set to false, Binary property would return the raw data of the scanned barcode.
- New samples (CS_PowerSample1 and VB_PowerSample1) demonstrating use of Microsoft Power Management API to get and set status and preferences.
- New Symbol.RFID Class Library accompanied with a set of samples.
- New Display size awareness enhancement to Imager Sample.
- New support for getting serial number and smart battery information through Resource Coordinator Class.
- New ConfigTypes available in Resource Coordinator Class.
- New Help Integrated with the Visual Studio environment.
- New support for Visual Studio 2005 Beta2.
- New support for Microsoft .Net Compact Framework 1 SP3 and Compact Framework 2.
- Fixed Symbol.Magstripe handling on a resume after a suspend and updated Magstripe samples accordingly.
- Fixed all scan samples to allow larger ReaderData buffers.
- Fixed cab installation to prevent warning messages on Windows Mobile 2003 Second Edition and later devices.
- Fixed Symbol.Printing bug that was causing incorrect fonts to be printed to the Zebra QL series printers.
- Updated ScanSample1, AudioSample1 and ResCoordSample1 for the smaller display of MC1000c42 and redesigned to handle keyboard navigation.
Version 1.1
- New device support for MC9000, MC9000w, MK2000, PDT8100x, SPS3000, PPT8800w
- New .NET-Style Help
- New Barcode Design-Time Control
- New MC9000 Desktop Emulator support
- New MKSeries class library providing access to custom API's specific to the MK2000
- New MKSeries sample applications
- New Imaging class library providing access to Imager API's on devices such as the PDT8100x and MC9000w
- New Imaging sample applications
- Enhanced StandardForms and BarcodeForms to improve performance and reliability
- Fixed "Wireless LAN roaming" issue, preventing loss of signal strength status when roaming between Access Points
- Fixed "Mislabeled Notification Objects" issue, preventing incorrect object from being accessed
- Fixed "simulation mode" issue preventing unintended entry into simulation when the assembly is unable to detect the required underlying components.
- Fixed "WirelessLAN.ESSID Null Character" issue, preventing incorrect ESSID information returned by the Text property.
- Fixed "MSR Track Mis-Decode" issue, preventing cards with no data in track 1 from being read properly.
- Fixed "Finalize not freeing resources" issue, preventing the garbage collector from freeing all managed and native resources back to the system.
Version 1.0
- Symbol.Barcode Class Library
- Symbol.Magstripe Class Library
- Symbol.Printing Class Library
- Symbol.Wireless LAN Class Library
- Symbol.Display Class Library
- Symbol.Audio Class Library
- Symbol.Resource Coordination Class Library
- Symbol.Notification Class Library
- Symbol.Keyboard Class Library
- Symbol.Keyboard Class Library
- Additional Help, including intellisense help.
- Source code for common forms (Symbol.StandardForms/Symbol.BarcodeForms)
Back to Top
<!-- ******************************************************************************************************** --><!-- ******************************************************************************************************** --><!-- ******************************************************************************************************** --><!-- ******************************************************************************************************** -->
Components
If the default location is not changed, the installed components can be found in the following folders:
Component - VS2008 Location under \Program Files Class library assemblies \Symbol Mobility Developer Kit for .NET\v1.7\SDK\Smart Devices Sample applications \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\Samples VS2008 Help files \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\Help Files CAB files \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\MassDeployment
Component - VS2005 Location under \Program Files Class library assemblies \Symbol Mobility Developer Kit for .NET\v1.7\SDK\Smart Devices Sample applications \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\Samples VS2005 Help files \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\Help Files CAB files \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\MassDeployment
Component - VS2003 Location under \Program Files Class library assemblies \Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\v1.0.5000\Windows CE Sample applications \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\Samples VS2003 Help files \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\Help Files CAB files \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\MassDeployment
Back to Top
<!-- ******************************************************************************************************** --><!-- ******************************************************************************************************** -->
Installation
Development PC
Install Requirements for Visual Studio.NET 2003:
- Microsoft Windows 2000 or Microsoft Windows XP
- Microsoft Visual Studio.NET 2003 *
- Microsoft Visual Studio .NET 2003 Add-on Pack
- Microsoft ActiveSync 4.1 or higher
Install Requirements for Visual Studio 2005:
- Microsoft Windows 2000 or Microsoft Windows XP
- Microsoft Visual Studio 2005 *
- Microsoft Windows Mobile 5.0 SDK for PocketPC
- Microsoft ActiveSync 4.1 or higher
Install Requirements for Visual Studio 2008:
- Microsoft Windows XP
- Microsoft Visual Studio 2008 *
- Microsoft ActiveSync 4.5 or higher
* The edition of Visual Studio 2003/2005/2008 installed must support Mobile device development. Express editions of Visual Studio do not support Mobile device development.
Device Runtimes
To prepare a device to run applications that utilize Symbol .NET libraries, the following runtime software must be installed:
- Microsoft .NET Compact Framework v1.0 SP3 or v2.0
CF1.0 SP3 is supported for development only with Microsoft Visual Studio .NET 2003.
CF2.0 is supported for development only with Microsoft Visual Studio 2005.
- SMDK for .NET runtime environment (symbol.all.arm.cab).
- Symbol.RFID2 requires CF2.0 SP2
Host Runtimes
- Symbol.RFID2 for Host requires .NET Framework 2.0
- The remote control operations on RD5000 requires installing the RFIDControl.zip package on the device. Refer to the Usage Note Using Symbol.RFID2 Host Assembly with RD5000 Device Reader
Back to Top
Device Updates
Update for Printing
Most of the enterprise mobility devices are shipped without the printer drivers installed. To use the Printer class library, the printer drivers must be added to the device. These drivers are available athttp://symbol.com/support.
Back to Top
Usage Notes
1. Accessing Help and Documentation
The SMDK for .NET components can be easily accessed using the "Symbol Mobility Developer Kit v1.7 for .NET" program group on the Windows Start Menu. This program group provides access to the Help file, Readme file and the Sample applications source code. SMDK for .NET Help has also been integrated with the Microsoft Visual Studio environment to provide an enhanced development experience through quicker lookups and intellisense.
2. Developing Applications
Once this package has been installed, creating .NET Compact Framework Applications that target SMDK is fairly simple. Follow the steps below to create a new application.
- Create a new "Smart Device Application" project that uses either the Microsoft Visual Basic.NET or Microsoft Visual C# languages.
- From the "Project" pull-down menu select "Add Reference...".
- From the list of .NET assemblies, select the "Symbol" assembly as well as the particular SMDK assembly that matches the functionality you would like to develop with (Example: For barcode scanning applications select "Symbol" and "Symbol.Barcode").
- Begin programming your application. Refer to the SMDK API documentation for information on the methods and properties of each class.
3. Developing Applications in VS2005/2008 using the "Symbol" Design Time Components
The device applications for scanning, imager and MSR can be developed using the design time (toolbox) components. SMDK v1.7 for .NET will automatically install these design time components to the toolbox in Visual Studio 2005/2008. These components can be dragged onto a form and begin the development without having to add references.
4. Adding the BarcodeReader Design Time Control to the VS2003 Toolbox
BarcodeReader Design Time control is a design time component that can be dragged onto a form. Before the BarcodeReader design-time control can be used, it must be added to the Visual Studio.NET 2003 toolbox:
- Activate the Toolbox window (Menu: View/Toolbox) from Visual Studio .NET.
- Within the Toolbox, right click the tab where you want to put the BarcodeReader control, and then select "Add/Remove Items..." from the pop-up menu.
- In the "Customize Toolbox" dialog, select the ".NET Framework Components" tab and then click Browse to locate the Symbol.Barcode.Design.dll. This DLL can be found at the following location:
\Program Files\Microsoft Visual Studio.NET 2003\CompactFrameworkSDK\v1.0.5000\Windows CE\Designer\
- Open Symbol.BarcodeDesign.dll. The BarcodeReader control will show up in the Customize Toolbox dialog. Click OK to close the dialog.
Note: Barcode Design Time is the only component available for the Microsoft Visual Studio 2003 environment.
5. Application Deployment through Visual Studio
During development, Visual Studio will automatically copy the .NET Compact Framework and SMDK CAB files to your device if they have not already been installed. Your application will then be deployed onto the device. For devices that have the .NET Compact Framework or SMDK class libraries installed, Visual Studio .NET will download the application only.
6. Application Mass Deployment
The following Mass Deployment directories are provided by the SMDK v1.7 for .NET:
Devices OS/CABs Location under \Program Files Windows CE, Windows Mobile 2003 \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\MassDeployment\CE.NETorWM2003 MKSeries CE 4.2 \Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\MassDeployment\MKSeries Included in these directories are files (.cab, .cpy, and .reg) that can be used to copy the .NET CF*** and SMDK cab files from an "\Application" partition into the "\Windows" directory and installed on a cold boot. The CAB files are installed using "Startup.exe" to launch wceload.exe (standard CAB installation method) with the command line that contains the name of the CAB file.
*** Please note that the .NET CF CAB files are not provided in the MassDeployment directory.
They can be manually copied from the Visual Studio .NET 2003/2005 directory to the "\Application" folder located on the
device.For Windows CE.NET or Windows Mobile 2003 devices the .NET CF CAB files can be found under "\Program Files\Microsoft Visual Studio .NET 2003\CompactFrameworkSDK\v1.0.5000\Windows CE\wce400\armv4" or "Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\CompactFramework\2.0\v2.0\WindowsCE\wce400\armv4".
For Windows CE 5.0 devices, the .NET CF CAB files can be found under "Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\CompactFramework\2.0\v2.0\WindowsCE\wce500\armv4i".
With Visual Studio 2008, these will be avaiable under \Program Files\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE.
The included .cpy and .reg files are designed for CF1 cab installation. These files can be customized for CF2 installation. The following lines in the files "symbolmdk.cpy" and "symbolmdk.reg" should be modified to match the .NET CF CAB file.
"symbolmdk.cpy"
\application\netcfv2.ppc.armv4.cab > \windows\netcfv2.ppc.armv4.cab"symbolmdk.reg":
[HKEY_CURRENT_USER\Software\Symbol\Startup\Programs\Prog10]
"Command"="\Windows\netcfv2.ppc.armv4.cab"
7. Caution with Power Samples
The CS_PowerSample1 and VB_PowerSample1 have been provided to demonstrate the Power Management features of devices that utilize a Microsoft Power Management architecture (MC9000, MC50, MC3000 etc.). The sample may not function with certain devices. Using Power Management features to change device and system power states should be avoided as it may interfere with the working of the device and may result in unexpected behavior and loss of data.8. Running Samples on MC1000
ScanSample1, AudioSample1 and ResCoordSample1(CS and VB) have been updated to fit the smaller display of the MC1000. Further modifications in the samples have been made to allow for keyboard navigation on the MC1000 where keyboard is the only means of input. Support for keyboard navigation requires the presence of CF1 SP3. Other samples may not be usable on the MC1000 without further modifications.9. Caution with WAN Samples
The WAN sample is provided for demonstrating the usage of TAPI and other WAN related features. This sample program is provided for demonstration purpose only and it should not be used as a production application. This sample will work on only those device that provide WAN capabilities like MC9090.10. Caution with CaptureAccumulateTransfer (CAT) Samples
The CAT sample is provided for demonstrating the usage of capturing and storing data on a device and transmitting it to a host PC using socket technology. This sample program is provided for demonstration purpose only and it should not be used as a production application. Please note that only one client device can connect to the host at any given time.11. Using RFID2 Host Assembly with RD5000
Using the RFID2.Host assembly with RD5000 requires installing additional software package. To obtain this package search for "RFID Control Daemon Package (RFIDControl) For The RD5000" onSupport Central. Refer to the documentation provided in the package for installing and performing the remote control operation on RD5000.12. RFID2 Requires that the Application Keeps Track of Configuration
When reconnecting to reader (after incidental or manual disconnect), API assumes default configuration. When the customer application configures reader, and a disconnect operation is performed, the application would need to reconfigure the reader after reconnecting to reader.13. RFID2 Antenna Configuration
If an application needs to change any antenna settings, it must first get the current antenna configuration using IRFIDReader.GetAntennaConfiguration, make the desired changes, and then set the modified antenna configuration using IRFIDReader.SetAntennaConfiguration.14. RFID2 Migration
The help file contains a migration section for porting applications from the Keytone RFID API to the new RFID2 API. Applications written using the older RFID API cannot be ported. A complete rewrite is required.15. RFID2 Write ID exception
When using RD5000 or MC9090 readers, the user application may receive an exception indicating that the write operation could not be verified. The application must handle this exception and either reissue the command or read the tag ID to determine if the write operation actually succeeded.16. RFID2 API Product Support
Refer to Symbol.RFID2.Device assembly section in help file to find out the products supported by Symbol.RFID2
Back to Top
Known Issues
- The MC70 Magnetic Stripe Reader may not restart firing read notifications after the device is resumed following suspension. The workaround is to close and open the Magnetic stripe Reader. The underlying driver issue will be addressed in a future release of the device software.
- An attempt to disable fields Supplemental2 and Supplemental5 of the class UPCEANParamsAPI after reading one barcode will result in an exception. The underlying driver issue will be addressed in a future release of the device software.
- Certain operations on EPC class1 Gen2 tags (such as Erase tags, programming access password, locking tags, use of partial masking etc.) may not be successful and some settings may be limited to only default values (such as LockOption and WriteOption) due to unresolved issues in the underlying RFID device software. Please refer http://symbol.com/support for the latest updates on RFID device software for your mobile computer.
- Symbol.RFID namespace fails to write to EPC Class 0 tags. The underlying driver issue will be addressed in a future release of the RFID device software.
- The MC50 Color Camera captures 16bpp BMP images that are not supported by the Microsoft .Net Compact Framework. However, JPEG images can be successfully captured using IMGOperations.dll version 1.7 or later.
- The ImagerSample1 (CS and VB) may throw an exception when trying to capture an image on the MC3000 CE 5.0 device with Compact Framework 1.0. This problem does not appear when Compact Framework 2.0 is used.
- MagStripeParams.TrackSelection may fail to report the data from a specifically requested track. The workaround is to set TrackSelection to ALL_TRACKS (default) and ignore the unwanted tracks.
- On MK1100, MK2000 and PPT8800 devices, enabling and disabling the backlight may produce an error.
- On MK2000, checking the contrast level in DisplaySample1 may produce an exception. A later release will contain a fix for this issue.
- The XR series of RFID readers has limited support for read point configuration in the Symbol.RFID2.Host assembly. The read points may need to be configured using the web interface prior to using the reader from a RFID2.Host based application.
- XR antenna settings are only supported in version 2.4.x
- To use Autonomous mode with XR readers in Symbol.RFID2, the read points in the web interface must be configured as POLLED. In addition, if the host application looses reader connectivity while the XR reader is in autonomous mode, user must manually stop autonomous mode using the web interface before attempting to reconnect to reader.
- When using Symbol.RFID2.Host with RD5000, the write tag id operation by default is for Gen 2 tags, but if there are no Gen 2 tags in the vicinity, the RFIDControl daemon will attempt to write to class 1 and class0 plus tags.
- Symbol.RFID2.Host sample applications may have problems connecting to XR or RD5000 readers if the host PC has more than one network adapter.
- Attempts by a second RFID2 host application to connect to an RD5000 reader may cause an already connected application to disconnect from the reader. Under normal operation the reader rejects connection to second host application.
- GPIO notification event IRFIDReader.InputStatusNotifyEvent does not work with XR version 3.1.x. This feature only works with XR 2.4.x version. To get around this issue in XR 3.1.x, the application must use IRFIDReader.GetIOStatus to periodically poll for the status of input pins.
- If versions prior to Compact Framework 2.0 for .NET Service Pack 2 are used, debugging trigger feature in MC9090 may crash both visual studio 2005 and the device application.
- The symbol.mkseries.all.arm.cab does not deploy during application deployment using VS2005/2008. It should be manually installed on the device. The mksieries.all.arm.cab is available at "\Symbol Mobility Developer Kit for .NET\v1.7\Windows CE\MassDeployment\MKSeries" under program files
Troubleshooting
- MC9000 Internet Explorer Components Warning
The Application image provided with the MC9000c42 DCP contains a directory labeled IE. This folder contains required components for developing, “.NET” applications. This folder must not be removed from the device. - First Available Trigger
Some of the samples make use of the first available trigger to capture a trigger event. Since a device could have multiple triggers, the assumption is first available trigger is the main trigger of the device. However, in the some of the new devices like MC9090, the first available trigger may not be associated with the main trigger. In that case the sample code must be modified to use the right trigger. An example of the modification required is shown below:Replace this line:
trigger = new Symbol.ResourceCoordination.Trigger();
With this Line:
trigger = new Symbol.ResourceCoordination.Trigger(Symbol.ResourceCoordination.TriggerDevice.AvailableTriggers[triggerIndex]); - Sample Applications
The sample application programs are provided for the purpose of demonstration and are to be used as-is. Although each program has been thoroughly tested, there always exists the possibility of coding errors. The source code for each sample application has been provided to allow a jump start into mobile application development. In the unlikely event a coding error is found in one of the sample applications, having access to the source code will allow the customer to fix the error.
- Sample Applications Runtime Requirements: The samples require that the Microsoft .NET Compact Framework and Symbol .NET cab be installed prior to running them. The samples will fail to run if these conditions are not met.
- Error: Cannot Connect to Device
If you have a valid ActiveSync connection and still cannot connect to the device through Visual Studio .NET 2003, please refer to the Readme file Microsoft provides in its "Windows CE Utilities for Visual Studio .NET 2003 Add-on Pack". This documentation provides a number of steps that can be taken to fix this issue.
Last revised: January 21st, 2008
Copyright (c) 2008Motorola, Inc.