Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The CE 6.0 development tools will be shipping as a plug in to Visual Studio 2005 - you can develop your CE 6.0 based operating system image using Platform Builder (the CE development tool), download and debug the operating system to the ARM based Device Emulator or a "real" board, and then at some point you may want to develop an application to run on the embedded operating system - you have two choices - you can either use the same Platform Builder tool to generate C/C++ Win32 applications or DLLs (the DLLs could be a driver or a custom set of functions, or a set of resources for internationalization) - the second choice is to use Visual Studio 2005 to write a C/C++ Win32, MFC, or Managed (C#/VB) application. You will need Visual Studio 2005 SP1 if you want to write MFC, ATL, WTL, STL code or managed C#/VB code - also, if you are writing "native" code you will need to generate an SDK from Platform Builder and have this installed into Visual Studio 2005 so you can build against your o/s components (this is the same model that existed for Windows CE 5.0 and eMbedded Visual C++ 4.0 SP4 and Visual Studio 2005).
Let's assume that you want to write a managed application for your CE 6.0 operating system and let's aslo assume that you've downloaded/installed Visual Studio 2005 SP1 (I will get to native VS 2005 application development on another post).
Here's what you need in your CE device for this to work...
- IPConfig
- WCELoad
- Compact Framework 2.0 and Compact Framework 2.0 Dependencies
CE 6.0 supports 4 processor architectures, ARM, MIPS, SH4, and x86 - to communicate between VS 2005 and your embedded device you will need ConMan applications on your target device (either included in the o/s image which is great for development and debugging, or copied onto the device when you want to write/test applications) - the ConMan files can be found here - C:\Program Files\Common Files\Microsoft Shared\CoreCon\1.0\target\wce400\<processor type> - note that ConMan gets updated with the VS 2005 SP1 install.
Here are the files you will need on your device from the CoreCon folder (I'm using CEFileWiz to get these files into my o/s image).
- clientshutdown.exe
- cmaccept.exe
- ConmanClient2.exe
- DeviceDMA.dll
- eDbgTL.dll
- TcpConnectionA.dll
You will need to know the IP address of your target device (I'm assuming that you are downloading to your target either using the Device Emulator DMA transport or Ethernet) - I typically add the "Network Utilities" to my operating system image so that I have some baseline networking utilities such as ping, ipconfig etc...
BTW, did you know that you can use the CE Command Shell to run commands on your device? - for example, if I wanted to run IPConfig and get the output sent to the CE debug window I could type "s ipconfig /d" - the optional "/d" will send the output to the debug window.
Now that you have the IP address you can create your C# or VB "Smart Device" application targeting Windows CE 5.0 (yes, the CE 5.0 application will run on CE 6.0) - Once you have the application written and you have the IP address for your target device you can then configure VS 2005 to deploy the application.
In VS 2005 select Tools | Options and then scroll to Device Tools and expand/select the Devices node.
Select the Properties button on the Options Dialog and then hit Configure on the Device Properties dialog.
Select Use specific IP address and enter the IP address you captured from the CE device/Platform Builder.
Click OK on everything until you get back to VS 2005.
Now, back to Platform Builder or the CE based device...
You will need to run ConManClient2 and CmAccept (in that order) before you can connect from VS 2005.
I typically use Platform Builder Target Control (the CE command Prompt in Platform Builder) to run these commands.
So, from Target Control do the following "s conmanclient2" and then "s cmaccept"
You now have exactly three minutes to connect from VS 2005 (actually, if you are running these steps 'real time' then you probably have about two minutes and thirty seconds...).
Now back to VS 2005...
You can now use Debug | Start Debugging and select "Windows CE 5.0 Device" as your target.
If all goes to plan the managed application will download, and you will be running the managed application on your target device.
That's all there is to it... :O)
BTW - One of the Virtual Labs we're working on for launch will cover these steps in detal.
- Mike
Comments
Anonymous
October 04, 2006
My buddy over at the Windows Embedded team has made a couple of great posts on Windows CE 6.0 leadingAnonymous
October 04, 2006
Hey Mike, Can you please let us know what are other options available or will i get the info by just typing our normal standard command "?" Thank you! With Best Regards, Jadeja Dusyantsinh A.Anonymous
October 04, 2006
The comment has been removedAnonymous
October 05, 2006
Hi Mike, I am following the steps that you mention in the post to add a managed application to a win ce 6 image,I am using CEFileWiz. The problem is that when I try to run the image the files doesnt appear. BTW I am using the emulator. RegardsAnonymous
October 05, 2006
I have an updated version of CEFileWiz that supports CE 6.0 - I will post this to the blog shortly (I'm still working on some updates but the core functionality works).
- Mike
Anonymous
October 10, 2006
Can you tell me whether running conmanclient2.exe and cmaccept.exe is something compulsory that should be done each time running the application? and whether it is only when trying to run the application on debug mode with VS2005? and what should be done if I use the deploy option of VS2005, and gets the project on the PDA, and try to run the executable directly? Thank you in advance!Anonymous
October 11, 2006
if you are copying the application binary onto the device and running locally then you don't need ConManClient2 or CmAccept.
- Mike