在Smartphone/Pocket PC 2003上设置提醒

在用.NET CF开发Smartphone/Pocket PC应用时,我们经常需要给应用程序增加提醒功能,比如在下午 两点时提醒用户去开会,或者在手持设备和PC通过ActiveSync连接时提醒用户同步某项重要数据。目前, 实现提醒功能主要有以下几种方式:

Windows CE .NET提供了CeSetUserNotification(在CE 2.11版本及以后又增加了 CeSetUserNotificationEx)这一API,可用于创建或修改提醒。该方法适用于Smartphone和Pocket PC。

Windows CE .NET还提供了另外一条API,SHNotificationAdd,也可以完成提醒的工作。该提醒是以 Pocket PC中的气泡方式显示的,在Smartphone上不予处理。

Windows CE .NET中内置了Pocket Outlook,并提供了POOM (Pocket Outlook Object Model)以便二次 开发。该方法适用于Smartphone和Pocket PC。

以上三种方法在开发时,均不同程度地要用到平台调用 (Platform Invoke) 或COM互操作,这对开发 人员的技术要求非常高,同时也不利于提高开发速度。因此,适当的封装是非常有必要的。幸运的是,目 前OpenNETCF.org (http://www.opennetcf.org) 已经完成了前两项的工作,在由OpenNETCF开发并免费发 放的SDF (Smart Device Framework) 中已经把上述前两项API封装为managed API,从而极大地减少了开 发人员的二次开发难度。同时,InTheHand公司 (http://www.inthehand.com) 也提供了一款非常棒的组 件——Pocket Outlook,用managed code封装了底层的COM互操作,从而使开发人员从细琐的底层细节摆 脱出来。不过,InTheHand这款组件只免费提供测试版,如需要在商业环境中使用还需支付费用。

下面我就通过一系列实例来说明上面几种方法的应用。

1. OpenNETCF.Win32.Notify

OpenNetCF.org在SDF中的OpenNETCF.Win32.Notify命名空间下封装了CESetUserNotification(以及相 应的一套API),使用后只需要短短几行代码就能实现简单的提醒功能,如下例,可以在Smartphone/ Pocket PC 2003上设置一个1分钟后弹出的提醒对话框(需要增加对OpenNETCF.dll的引用):

UserNotification notification = new UserNotification();
notification.Action = NotificationAction.Dialog;
notification.Title = "我的提醒";
notification.Text = "别忘 了锻炼!";
  
Notify.SetUserNotification("", DateTime.Now.AddMinutes(1), notification);

实现效果如下:

图1: Smartphone上应用OpenNETCF.Win32.Notify的效果

图2: Pocket PC上应用OpenNETCF.Win32.Notify的效果

时间: 2024-10-28 21:54:15

在Smartphone/Pocket PC 2003上设置提醒的相关文章

vb.net2005下的pocket pc 2003应用程序与windows ce 5.0应用程序的区别

问题描述 小弟最近在开发PDA程序,发现在建立工程的时候有2中,pocketpc2003应用程序和windowsce5.0应用程序.请文一下这2中应用程序有什么区别,使用哪一种开发更为简便?望高手解答,本人不胜感激 解决方案 解决方案二:WindowsCE是微软公司嵌入式.移动计算平台的基础,它是一个开放的.可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统.WinCE是一个嵌入式操作系统,使用范围更广泛,不过它只是提供最基本的操作系统功能.WindowMobile是一个基于Wi

在Pocket PC中使用Web Service连接数据库

web|连接数据库 在Pocket PC中使用Web Service连接数据库前言微软的移动开发者大会在六月的北京举行了,国内的移动应用软件虽然是刚刚起步,但是这个前景宽广的领域已经受到越来越多软件厂商的关注了.移动设备上的商业应用尽管刚刚起步,但已经显示出巨大的发展潜力. 在微软移动开发挑战赛中,我的作品<饕餮元年无线餐饮管理系统>获得了商业应用的三等奖.为了实现Pocket PC与后台数据库服务器的连接,我的作品中使用了.Net CompactFramework和Web Service技术

开发和部署Pocket PC安装程序

应用Microsoft .NET Compact Framework 1.0 Microsoft Visual Studio .NET 2003 概要 了解如何创建独立的 .msi 文件,该文件从桌面运行以便将应用程序安装到不同的 Pocket PC 设备上.开发过程是自动化的,所以能轻松创建和打包所需组件到一个 .msi 文件.示例代码用 C# 和 VB.NET 语言编写. 内容提要 概述 部署 卸载 开发 开发过程自动化 概述 下面所列为开发和部署 Pocket PC 应用程序的要点: Po

用.net 2003开发Windows CE应用,解决与pocket pc通讯的问题

window|解决|问题   用.net 2003作Windows CE应用时,碰到一个问题.工程编译通过,但在部署到pocket pc时出现如下的错误:------ 已启动部署: 项目: PDA, 配置: Debug Pocket PC ------ 正在部署到 Pocket PC 设备正在使用 TCP 连接传输 错误: 无法建立连接.请确保此设备已经与开发计算机建立了物理连接.---------------------- 完成 ---------------------     生成: 1

在Windows PC上设置并运行iCloud教程

  在Windows PC上设置并运行iCloud教程详解游戏狗小编子夜今天为大家带来,只需简单几步,就能在你的 iPhone.iPad.iPod touch 或 Mac 上设置并运行 iCloud.然后为你的 Windows PC 设置 iCloud. 一.下载iCloud控制面板 要在 Windows PC 上启用 iCloud,首先要在其他设备上设置 iCloud,然后安装适用于 Windows 的 iCloud 控制面板 (需使用 Windows 7 或 Windows 8). 二.开启

如何从桌面系统下安装WinCE平台下Pocket PC应用程序

看论坛上经常有人问,如何从桌面系统下安装WinCE平台下Pocket PC应用程序.特此把以前参考VCHelp上雷神的安装制作写的一个Win32 安装WinCE应用系统的程序,放了上来.希望能为在制作WinCE下应用程序安装程序提供一些参考.具体步骤如下: 1.在VS.Net2003中新建一Win32工程,命名为SetUp. 图一 创建工程 选择一空项目,生成项目. 图二 项目设置 2.在项目菜单中,选择添加新项.或者直接按Ctrl+Shift+A添加一个C++文件,并命名为Setup 图三 添

Win7系统下设置提醒气球生存时间的技巧

  当我们在win7系统中更新完补丁或者进行别的系统任务的时候,系统右下角总是会弹出一些提醒气球,比如当网络连接不上需要重新连接的时候,这时候任务栏右下角就会出现提醒气球,提醒气球是定时更新的,它具有生存时间,过一会就不见了,不过有些用户希望提醒气球多出现一点好提醒自己,那么win7系统下要如何设置提醒气球的生存时间呢?下面就跟大家介绍一下具体设置方法吧. 1.首先运用Win7组合键Win+R打开运行,然后输入gpedit.msc打开计算机的本地组策略编辑器; 2.然后打开用户配置选项,在管理模

微软推出了自己的手持设备Pocket PC

网易科技讯 7月10日消息,据国外媒体报道,当个人电脑还如日中天之时,微软推出了自己的手持设备"Pocket PC(掌上电脑)".但实际上,它只是一个小型化的Windows PC,因为当时个人电脑是主要的,通常也是唯一的数字处理设备.但是,时光荏苒,个人电脑已经慢慢进入了退出历史舞台的阶段,或者说正在被智能手机吞噬. 过去的七年里,由于iPhone的出现,个人电脑已经逐渐被智能手机取代(或者更公平的说是平板电脑).个人电脑销售在最近几年显著下降,去年的销售额达到历史最低,而智能手机和平

swift在IOS应用图标上添加提醒个数的方法_Swift

在应用图标右上角添加消息数提醒,可以很方便的告知用户该应用中有无新消息需要处理.下面用xcode 7.3.1来简要说明一下如何用swift语言进行此功能的实现. 1.修改 AppDelegate.swift // // AppDelegate.swift // RainbowDemo // // Created by Jackwang on 16/8/17. // Copyright 2016年 Jackwang . All rights reserved. // import UIKit @U