Introduction to Pocket PC Development

An overview of Pocket PC development, including information on development tools and languages available. 

Introduction

There have been many articles on various aspects of Pocket PC development in this site. This article is different in the sense that it tries to give an overview on things which we would like to know before entering into the world of Pocket PC development namely information regarding the operating system, development tools etc.

History of Windows CE

In 1996, Microsoft scaled down their Windows NT operating system and announced a modular version for a broad range of communication, entertainment and mobile computing devices like PDAs, Digital Internet Phones, Auto PCs etc. Windows CE can not only scale up to the power of feature rich devices like PDAs but also scale down to less than 1 MB to provide basic yet relatively powerful system services in very compact devices like Digital Internet Phones. A custom version of Windows CE can be configured by using a tool called Platform Builder provided by Microsoft for use to OEMs. From 1996, Windows CE has come a long way in terms of features and Microsoft just released Windows CE 4.2 this year sometime back.

Pocket PC

A 'Pocket PC' is a PDA running a specification of Windows CE called 'Pocket PC edition'. This specification comes with additional shell extension and applications specific to PDA. Likewise, PDAs coming with Digital Internet Phone features run another specification of Windows CE called 'Pocket PC Phone Edition'. Microsoft also has a specification called Smartphone edition used in Digital Internet Phones. Pocket PCs are high end devices requiring a memory of at least 16 MB. Currently there are Pocket PCs in the market which have upto 128 MB memory. All information in PDAs are stored in memory or RAM. There is nothing like hard disk in PDAs. Currently the latest version is Pocket PC 2003 edition which is a specification of Windows CE 4.2.

Development tools offered by Microsoft

Embedded Visual Tools 3.0

Microsoft eMbedded Visual Tools 3.0 provide an entry-level integrated development environment for building mobile applications, including necessary compilers, debugging and platform documentation. The eMbedded Visual Tools 3.0 include Microsoft eMbedded Visual C++® 3.0 (eVC 3.0) and eMbedded Visual Basic® 3.0 (eVB 3.0). Both tools are separate development environments and do not require any other development environment, such as Microsoft Visual Studio or Visual Studio .NET, to run. To target a Windows mobile-based device, all tools require a platform Software Development Kit (SDK) for the device you want to target. The 2002 edition of the eMbedded Visual Tools 3.0 includes the SDKs for all current Windows Mobile devices, including Pocket PC 2002 and Smartphone 2002. SDKs for devices outside the Windows Mobile family of devices should be available from the device manufacturer. You can download the eMbedded Visual Tools 3.0 - 2002 edition for free at Windows Mobile - Developer downloads section. More information about eMbedded Visual Tools is available at Embedded Visual Tools section. The Pocket PC 2003 SDK can be downloaded separately at Download details: Pocket PC 2003 SDK.

Embedded Visual C++ 3.0

The Microsoft eMbedded Visual C++ 3.0 development system offers the native code C++ compiler for Windows mobile-based development. It can target all devices based on Windows CE 2.11 and 3.0 if the correct SDK is installed. Use eMbedded Visual C++ for:

  • Drivers for the Pocket PC or any other Windows mobile-based device
  • Applications that run natively on the device
  • Games using high-speed graphics through the Game API (GAPI)
  • Applications with intense processing requirements
  • COM servers or Microsoft ActiveX® controls

Embedded Visual Basic 3.0

eMbedded Visual Basic 3.0 enables applications that use the Visual Basic language; the resulting P-code is interpreted at runtime. While most Windows mobile-based devices have built-in capabilities to run applications built with eMbedded Visual Basic, some custom embedded Windows CE-based hardware platforms may not contain the eMbedded Visual Basic runtime. eMbedded Visual Basic is based on a scripting language rather than on the full-featured Visual Basic language. Therefore, many language features available in Visual Basic 6.0 for the desktop are not supported in eMbedded Visual Basic 3.0. For example:

  • All variables are variant by default; strong typing is not supported
  • ActiveX controls cannot be developed with eMbedded Visual Basic, but they can be hosted
  • Several Visual Basic intrinsic controls are not supported and some properties are missing

The eMbedded Visual Basic technology is being phased out and replaced by the more powerful Visual Basic .NET language. Microsoft recommends that developers use Visual Basic .NET to create all new Pocket PC applications and use eMbedded Visual Basic for maintaining older applications.

Embedded Visual C++ 4.0

Microsoft eMbedded Visual C++ 4.0 supports development for the new Windows CE .NET 4.2 based devices. eMbedded Visual C++ 4.0 is ideal for targeting mobile or embedded devices based on Windows CE .NET 4.2 using native code. Enhancements of eMbedded Visual C++ 4.0 include:

  • Just-In-Time debugging for diagnosing unhandled exceptions
  • C++ structured exception handling
  • "Attach-to" a process for improved process debugging
  • Better integration with the new emulator

You can download eMbedded Visual C++ 4.0, eVC 4.0 Service Pack 2 from Developer Downloads.

Visual Studio .NET 2003

The Smart Device Programmability (SDP) features of Visual Studio .NET, formerly known as the Smart Device Extensions (SDE), help developers write mobile applications that take advantage of the Microsoft .NET Compact Framework, enabling distributed mobile computing in either connected or disconnected scenarios. The extensive class library available through the .NET Compact Framework allows applications to be written much faster than with traditional tools. Visual Studio .NET 2003 enables Pocket PC 2002 and, with the appropriate SDK, Pocket PC development using the same tools and techniques as desktop development. It installs the .NET Compact Framework, which is specifically designed for resource-constrained devices. Developers can use the new C# language or the Visual Basic .NET language to target mobile and embedded devices. It also works well for applications that use XML web services or leverage ADO.NET. Use Visual Studio .NET 2003 for:

  • Applications that take advantage of web services
  • Applications that must work well in either a connected or disconnected environment
  • Developing applications using either Visual Basic .NET or C#
  • When you wish to use the same tools for desktop, server and device programming
  • Rapidly developed mobile applications
  • Software that provides a reliable and secure environment
  • Applications that may be moved to different devices with different CPUs or a variety of Windows versions

For more information on the Smart Device Programmability features of Visual Studio .NET, see Smart Device Programmability.

ASP.NET Mobile Controls

ASP.NET Mobile Controls, formerly known as the Microsoft Mobile Internet Toolkit (MMIT), complement Smart Device Programmability and the .NET Compact Framework. ASP.NET Mobile Controls extend the power of the .NET Compact Framework and Visual Studio .NET for building mobile web applications by enabling ASP.NET to deliver markup to a wide variety of mobile devices. With this approach, developers can use Visual Studio .NET to build a single mobile web application that automatically adapts its page rendering for a wide variety of devices, such as Internet-enabled cell phones, pagers and PDAs, like the Pocket PC. It also eases development tasks because it integrates into the Visual Studio .NET Integrated Design Environment (IDE), allowing developers to build mobile web applications by dragging and dropping controls onto a mobile web form. ASP.NET does not install any components on the client device. Instead, it uses server-side logic to adapt the rendering to a specific device's web browser. It generates Wireless Markup Language (WML), HTML, and compact HTML (cHTML). In addition to adaptive Web page rendering, ASP.NET offers a rich framework for customization and extensibility, providing an easy means of extending the controls to take advantage of new and different devices that will enter the market. Additionally, ASP.NET lets developers control the rendering for a specific device or class of devices within the same programming model, and allows developers to easily add support for new devices without re-authoring their mobile web applications.

Use ASP.NET Mobile Controls for:

  • Supporting a wide range of web-enabled devices (cell phones, pagers, PDAs)
  • Supporting different markup languages (WML, cHTML, HTML)

Note: ASP.NET Mobile Controls do not require any client-side installation. However, the target device must have a client web browser.

ASP.NET Mobile Internet Toolkit can be downloaded at Download details: Mobile Internet Toolkit. For more information about Microsoft ASP.NET Mobile Controls, see Mobile Web Development with ASP.NET.

Microsoft SQL Server 2000 Windows CE Edition Version 2.0

Microsoft SQL Server 2000 Windows CE Edition (SQL Server CE) version 2.0 is the compact database for rapidly developing applications that extend enterprise data management capabilities to mobile devices. SQL Server CE is a powerful tool that makes it easy to develop mobile applications by supporting familiar Structured Query Language (SQL) syntax and providing a development model and API consistent with SQL Server. The SQL Server CE engine exposes an essential set of relational database features, such as an optimizing query processor and support for transactions and assorted data types, while maintaining a compact footprint that preserves precious system resources. Remote data access and merge replication ensure that data from SQL Server databases is delivered reliably; can be manipulated offline; and can be synchronized later to the server, making SQL Server CE ideal for mobile and wireless environments. SQL Server CE 2.0 is designed to integrate with the .NET Compact Framework through Visual Studio .NET, simplifying database application development for smart devices. Using the new SQL Server CE data provider to manage code by means of the Common Language Runtime, mobile application developers can build highly extensible applications with offline data management capability for disconnected scenarios.

Use SQL Server CE as a complement to your development tools when:

  • Extending enterprise data management capabilities to Pocket PCs
  • Developing applications that store and manipulate significant amounts of data on a mobile device
  • Needing reliable data replication with mobile devices in environments with intermittent connectivity

For downloading the latest version of SQL Server CE database, please go to Download details: SQL Server CE. For more information about SQL Server CE, see Build Better Applications with SQL Server CE 2.0.

Application deployment tools

Microsoft ActiveSync

If you are planning to deploy your Pocket PC applications to various devices, you should be having this software. This software is freely downloadable. For downloading the latest version of ActiveSync, please go to Download details: Activesync 3.7. ActiveSync supplies following features for Windows CE based devices:

  • Backing up and restoring device data
  • Installing and removing Pocket PC applications

ActiveSync supports the following interactions between desktop computers and Windows CE based devices through add-ins called Service Providers which runs within the ActiveSync framework. To get more information regarding ActiveSync, please refer the online help which comes with Pocket PC development environments.

Testing/Debugging Pocket PC applications

For testing Pocket PC applications, you have the Pocket PC Emulator which gets installed and integrated automatically with the development environment software when it is installed. But currently the emulator coming with Pocket PC 2003 edition has to be downloaded separately.

Conclusion

I hope you found this article useful in starting with Pocket PC development. I have included some links to EVB/EVC/.NET Compact framework articles on Pocket PC development. Awaiting your valuable feedback.

Pocket PC development resources

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值