This is a CE core device (most of our other CE devices are CE Pro), so if your app is using something that is not supported in CE core, it may have issues. The biggest of these are web browser related. There is no IE browser or the underpinnings in a CE core device. If your app is using any browser related pieces, it might not run on CE core. The other thing that comes to mind is that you may be using a feature that does not work or maybe has been changed in CE6. You mention that this app works on Windows Mobile, but that is still based on CE5. You should be able to debug the app on the device through activesync. I would think that you would see some kind of indication there that might point out what the problem is.
A new sku is available for the MC2180 with more memory and Windows CE 6.0 professional. This BSP includes IE6 mobile and RDP client.
Thanks for responding to my post and questions. I wasn't sure if the post
was still active.
The application that I am attempting to port over to this device is a large
C++ application that uses MFC (minimal stuff) and runs via multiple dialogs that
are built from an XML file with a proprietary engine. This application also
uses WiFi and Bluetooth to communicate with a TCP server application and BT
printers. It uses nothing via a web browser.
I have not been able to run this code in a debug environment using
activesync. If you have any suggestions on how that is done, I would appreciate
any feedback or tutorials you might have.
I have built a simple Dialog based app and gotten it to run on the
devices. I then attempted to bring in the code for this application and was
able to build it. I replaced the the WinApp code from the application I am
porting with the WinApp and Dialog code from this simple app to see if I could
get something to display, but I have not been successful yet.
Are there any other things that CE 6 Core OS doesn't support?
Thanks again for your help.
I didn't find an equivalent for CE6, but here's where you can download a doc about the differences between Core and Pro on CE5. Should be similar for CE6
Activesync debugging can be tough to get working sometimes. It uses TCP/IP over the Activesync connection and also will try to use Wifi if the device is connected to wifi. I have seen a lot of issues if the device is on Wifi and the PC is not on the same WiFi network, or there is a firewall between the device and PC. Try shutting off the Wifi on the device as a test if you can. Also try killing any firewall on your PC temporarily. I just tried it here on an MC2180 and it worked OK for me. My project has the target set as a Pocket PC 2003 device, as most of our sample apps in the EMDK are. Can you try debugging one of the EMDK sample apps to see if that will work?
Thanks for the suggestions on the debugger. I was able to get it working from VS2005 and was able to step through my simple dialog based Hello World app.
I then tried my converted application and found when stepping through the code that I am getting an Assert Failure in wincore.cpp. I am able to step through some of the code, but eventually it hangs with this error and I don't have any debug information for this CPP file.
Is there an emulator available for the MC2180 that would allow me to debug this on the desktop rather than on the handheld device?
Thanks again for your help on this problem.
There are emulators for Pocket PC and Windows Mobile devices, because there is a standard set of requirements for those devices. The CE operating system can be built in a lot of different configurations, so there really isn't a way to put out a generic emulator for it. I think you will need to debug this on the actual device.
One of the differences between core and Professional is "AYGShell API Set". I'm wondering if this proprietary engine that you mention might be trying to use that API set, or whether it might be trying to use a webview.
Another possibility might be that the XML parser might not be included in this OS. I think it would definitely be in a CE Pro OS (the browser would need it). Is the app trying to use the OS XML parser?
I have finally been able to get the application to run on the device. I had to create a new solution for a dialog based app and then add all the code in from the project I am converting. This seemed to get around the issues I was having once I removed some unsupported code for this like AYGShell as you indicated. I had a stack size issue that was causing it to blow the stack with the new project that I created. So once I got that figured out things were running.
I ran into an issue with BT printing, but found the problem. This device uses "BSP:" for the BT communications port name instead of the old COM1:, etc...
Thanks again for all your help.