Using Platform Builder remote tools over ActiveSync

Posted by: Sue Loh

This information is something I only personally discovered recently, and it has important implications for our application developer community!  For years I thought our "platman" remote tools (Remote Kernel Tracker, Call Profiler and Performance Monitor) were only usable on devices that had a KITL connection through Platform Builder.  Meaning I thought they were only usable by OEMs.  But it's not true!  You do still need a copy of Platform Builder (you can download an eval version online but ultimately you end up having to buy it), but you can connect over ActiveSync to an off-the-shelf Windows Mobile device!  To me this is huge, because for YEARS now I've had to break the bad news to customers that there are no profiling tools available to Windows Mobile application developers.  It turns out I'm wrong.

Here's how to do it!  I'll use Kernel Tracker in my steps here for setting up the connection but all tools will work after you do this.

  1. Install Platform Builder
  2. Open Remote Kernel Tracker from the Tools or Target menu (depends on which version of Platform Builder you're using)
  3. Cancel the "Select a Windows CE Device" dialog
  4. Go to Connection | Configure Windows CE Platform Manager...
  5. Select "Windows CE Default Platform" and click the "Add Device" button.  Name the new device "ActiveSync Device."
  6. Select the new device and click the "Properties..." button.
  7. Set the Transport and Startup Server to ActiveSync.
    ActiveSync device platman settings
  8. Hit OK and close the Platform Manager Configuration window.
  9. Connect your device to ActiveSync.
  10. In Kernel Tracker, go to Connection | Connect to Device.  This time when it asks you what device to connect to, the ActiveSync Device will show up.
    Platman connection to ActiveSync device
  11. Select the ActiveSync Device and click OK.  Kernel Tracker will connect to your device!

Now, before you go spend a lot of time on it, I need to warn you:  I think there is a bug in Platform Builder 6.0 that makes this method not connect to Windows Mobile devices reliably.  It's still worth a try, but if it doesn't connect, then you might need to wait for some upcoming updates.  (No, I can't promise when those will be available.)

UPDATE June 6, 2007:   The "updates" I was talking about were the Platform Builder 6 Service Pack 1, which is now available online.  (https://www.microsoft.com/downloads/details.aspx?FamilyId=BF0DC0E3-8575-4860-A8E3-290ADF242678&displaylang=en)  At the time I wrote this post I was helping someone with a Remote Call Profiler problem which seemed to be fixed by SP1.  It was Call Profiler specific however.  If your remote tools still won't connect, it may take some troubleshooting; I'll try to get a new post out about that soon.  Often it is a mismatch between the CPU/architecture reported by your BSP and what the tools are looking for.  Sometimes it's an install error where the necessary files are missing from your PC.

UPDATE June 6, 2007: Nicolas Besson posted a similar message about configuring CoreCon remote tools (mine is about those that still use the older Platman transport).  https://nicolasbesson.blogspot.com/2007/06/windows-ce-60-remote-tools-over.html

Comments

  • Anonymous
    April 02, 2007
    oh... Sue.. LTK/CETK also uses this way to do the testing. :)
  • Anonymous
    April 02, 2007
    I am sure this is a "DUH!" post to some people out there.  :-)  But I never knew until now I could do this, so I thought I should post it, in case other people don't know.Sue
  • Anonymous
    April 02, 2007
    Thanks for your posting and sharing... I enjoy these articles... :)
  • Anonymous
    April 02, 2007
    It is not necessary to buy Platform Builder: you can download embedded Visual C++ for free and use its remote tools: I grabbed the registry of my Windows Mobile device via USB ActiveSync that way...
  • Anonymous
    April 03, 2007
    That's true; as long as Embedded Visual C++ is out there you can use those remote tools to connect.  They're older but should probably still work with today's devices.Sue
  • Anonymous
    April 04, 2007
    Does this work only with Platform Builder 6 or can you use PB 5?
  • Anonymous
    April 04, 2007
    This does work with PB 5.0. I just confirmed connecting to the 5.0 Remote Tools using USB ActiveSync connection.-Shane
  • Anonymous
    April 11, 2007
    It works with eVC++ remote tools too. I've been running the "Remote Call Profiler" over ActiveSync to debug Windows CE and Windows Mobile apps made in VS2005 (I have no PB installed).But I'm wondering why it is not possible to add new devices to the Remote Tools provided with VS2005? And, why are some of the Remote Tools missing alltogether? (Like for example Remote Call Profiler).As I understand it the Remote Tools found in eVC++ 4 can use ActiveSync and the "old" way of connecting remotely. While the new tools provided with VS2005 only work with Core Connect (or whatever it's called) but no ActiveSync - whats up with that?
  • Anonymous
    April 11, 2007
    Hi espenr,What's going on is that there are 2 different connectivity layers used by these remote tools: platman and corecon.  Platman is the older of the two, and is in the process of being deprecated.  Three of our remote tools have not yet been ported from platman to corecon: Remote Kernel Tracker, Remote Call Profiler and Remote Performance Monitor.  Too bad they are the ones I care most about.  :-(  VS2005 does not support platman, so none of the platman tools shipped with VS2005.  That's why some of the tools are missing from VS2005.I think the reason why you can't add new devices to the VS2005 remote tools is because the "add new devices" UI is from platman, not from corecon.  Do you have devices that you aren't able to connect to with the corecon remote tools?  I think the manual device configuration really shouldn't be necessary.Both platman and corecon can connect over ActiveSync.  These connectivity layers are really just wrappers around other connectivity layers, like HTTP, KITL and ActiveSync.  You can use the VS2005 remote tools over ActiveSync, I've done it.There is also a new layer coming online, the Remote Tools Framework (RTFx).  RTFx is a wrapper around corecon.  (I know, a wrapper around a wrapper...  :-( )  The reason for RTFx is that programming to the corecon interface is not easy; the APIs are not easy to write tools with, and corecon has a lot of problematic details to wrestle with.  So RTFx hides a lot of that, to make it easy for 3rd parties to write tools.  Look forward to new tools from other developers in the near future!In the mean time, we ARE planning to totally deprecate platman and get all of our remote tools into a state where, as long as you have VS2005, you can run ANY of the tools.  And in fact we're trying to get to the point where VS2005 isn't required either.  So here's to the future!Sue
  • Anonymous
    May 10, 2007
    Hi, sue.I'm so puzzled that how can you install and use ActiveSync on Vista? When I install AcitveSync, the Vista refuse. It seems use "Windows Mobile Device Center" instead.
  • Anonymous
    May 24, 2007
    The comment has been removed