I’ve just created an MSDN Code Gallery page to host a utility initially created for Windows CE 4.2 to automate the generation of WSDL/WSML files for native code XML Web Services.

The utility is called CEWSDLGen – the MSDN Code Gallery page is here.

CEWSDLGen solves a couple of problems with building native code XML Web Services on CE 6.0.

  1. Generating the WSDL/WSML using the wsdlstb_ce command line utility is not straight forward, there are a number of command line parameters required to get this to work correctly (including GUIDs). CEWSDLGen automates the process of generating the WSDL/WSML by pointing the utility at your projects .RGS file.
  2. Once you’ve written your native code XML Web Service (which is an ATL/COM object DLL) you somehow need to get the COM object registered on your Windows CE operating system image, this can be straight forward if you are in development/debugging mode, using Visual Studio 2005/2008 to download your ATL/COM object and register the COM object on the device is easy. But… what about using the ATL/COM object on a production device, in this case you want to have the ATL/COM object registered in the o/s image at boot time. CEWSDLGen will create a CE 6.0 catalog item for your XML Web Service which includes a .REG file that contains the information needed for your COM object to be registered at boot time.

Here’s the blog post that explains the process of hosting a native code XML Web Service on your CE 6.0 device.

- Mike