Post on 17-Jan-2016
MBL490
Deploying Applications to Smartphone and Microsoft® Powered Pocket PC
Marcus PerrymanConsultant
Agenda
eVC auto deploymentCAB files – your deployment friendGetting the CAB to the device
Via WEB, MAILDesktop Installer
Using removable mediaAutorun.exe
Provisioning multiple devicesSmartphone 2002 provisioning
EVC DeploymentDuring development – what happens?
Embedded Visual C++ 3.0 (Pocket PC 2002) and 4.0 (Pocket PC 2003)
Exe’s are deployed to “\windows\start menu” or “\”COM DLL’s are registered automatically
Visual Studio .NET 2003Deployed to “\Program files\<project>”Auto deploy and install of the Compact Framework (if required)
Duplicate through RAPIRemote API – requires Active Sync
CeRapiInit / CeRapiInitExCeCreateFile + CeWriteFileCeCloseHandleCeRapiUninit
DEMO
Desktop DeviceC++, H and lib modules
eVC Compiler
Controls and Com Objects
ActiveSync
Platform Manager Platform Manager (CEMGRC.EXE)
?.exe?.dll
?.exe?.dll
Coredll.dll
CEMON
CE
Shared/ 3rd party Libs
Desktop Device.cs, .vb files
VS.NET Compiler
Controls and Runtime
ActiveSync
Connection Manager Connection Manager (CONMGR.EXE)
?.exe?.dll
?.exe?.dll
Mscoree.dll
ConManClient
CE
CAB files – your deployment friend
What is a CABinet file?Default uninstall provided for free (Logo requirement)
Building CAB filesINF fileSetting Registry stringsUsing File GroupsInstall strings
Pre and Post install dllWCELoad and its parameters
/Delete [0|1|2] default to 2Defaults at “HKLM\Software\Apps\Microsoft Application Installer”
DEMO
Getting the CAB to the device
For the Pocket PCPocket IE supports file download
WCELoad run automatically through file association
Security can be provided by HTTPS
Processor type issues!
Deployment as Mail attachmentMark for download may be required
Processor type issues!
Getting the CAB to the device (cont)
Using Active SyncFile transfer – too complicated for users.Using Application Manager
HKLM\Software\microsoft\windows\currentversion\app paths\ceappmgr.exe
Building the INI filePutting it all together:
Visual Studio Installerhttp://msdn.microsoft.com/vstudio/downloads/tools/vsi11/default.asp
InstallShield
DEMO
Using removable media
Autorun.exe\2577\autorun.exe
On media insert check for Autorun.exeCopy to \windowsExecute in \windowsOn media removal Execute in \windows
DEMO
Internal “Removable” Media
Pocket PC internal Storage card32MB Rom space for most 2002 devices
8 MB free for Internal Storage card
Treated the same as removable\2577\Autorun.exe
Executed on soft and hard reset
DEMO
Provisioning multiple devices
How to update a whole work force?MailWeb3rd Party:
http://www.extendedsystems.com/ESI/default.htm
Custom solution Today add-in timer based web service check
Connection type? Active Sync, TCPIP, dial-up
Custom Active Sync filterDuring synchronization, check central server location (web service), download and apply any changes.
Smartphone 2002 provisioning
Security model for SmartphoneCertificate store, roles and policiesOperators choice:
Applications need to be signedCAB files need to be signedPrivileged vs unprivileged execution
Can still use:Active Sync, Web, Mail, removable mediaAlso get access to SMS, WAP deploymentMobile2Market
Common root certificatesLogo tests and web publication build into the program
DEMO
Summary
CAB files are your “flexible friend” for deployment, Install and Uninstall on the Pocket PC
There are many ways to apply CAB’s to the device – choose the appropriate solution for your application.
Smartphone security model may effect your development cycle. Even more ways to deploy to the device with GSM technologies.
Community Resources
Community Resourceshttp://www.microsoft.com/communities/default.mspx
Most Valuable Professional (MVP)http://www.mvp.support.microsoft.com/
NewsgroupsConverse online with Microsoft Newsgroups, including Worldwidehttp://www.microsoft.com/communities/newsgroups/default.mspx
User GroupsMeet and learn with your peershttp://www.microsoft.com/communities/usergroups/default.mspx
evaluationsevaluations
© 2003 Microsoft Corporation. All rights reserved.© 2003 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.