当前位置:早雪网网络学院编程文档软件工程 → 【原创】管道开发指南——Miken

【原创】管道开发指南——Miken

减小字体 增大字体 作者:未知  来源:从互联网收集整理并转载  发布时间:2005-6-3 0:56:07
§6.1 管道的作用
管道主要用于PalmOS平台上的应用程序与桌面计算机进行资料同步。当进行一个热同步操作时,热同步管理器将调用管道,保持桌面计算机与手持设备的资料同步,将手持设备的资料备份到桌面计算机,或者从桌面计算机下载资料到手持设备。
了解管道
一个标准的Windows管道是一个动态链接库,它提供热同步管理器的调用入口函数。在一个给定的热同步操作中可能与下面的部分或者所有部件相关:
热同步管理器(HotSync Manager):这个程序控制整个热同步过程。热同步管理器运行在桌面电脑的后台,监视特定的通信端口,以响应从PalmOS手持设备发来的请求。热同步管理器处理桌面电脑和手持设备基本的通信,控制一台桌面电脑多个用户的同步,安装新的应用程序和数据库到掌上设备,因为冷启动或者其他原因导致灾难性的数据丢失后来恢复掌上设备上的数据;
管道(Conduits):管道是一个插件模块,它处理掌上设备上的应用程序和桌面电脑数据源之间的数据交换。在一个热同步操作过程中,热同步管理器调用每一个注册的管道,完成相应的数据同步过程。一个管道不需要和用户进行任何的交互,就能完成修改桌面电脑、掌上设备或者两者的数据。当你设计一个管道时,不与用户进行任何交互是很重要的。当一个用户进行远程同步,他是没有办法去处理从管道得到的任何提示;
通告Dlls(Notifier DLLs):假如某个管道和桌面应用程序同时修改某数据,那么在同步过程中必须通知桌面应用程序不要对该数据操作,这样可以阻止数据被破坏或者产生记录副本。在热同步管理器调用管道去执行数据传输之前,管理器会为某些特殊的管道调用通告Dll。通告Dll依次把信息以桌面应用程序能够理解的格式传递给适当的桌面程序。这种处理的最好例子是“Palm Desktop”,它不允许用户在同步过程中修改任何数据。“Palm Desktop”之所以知道正在同步过程中,是因为有它自己的通告Dll-pdn20.dll 通知它;
Palm端应用程序:一般Palm端的应用程序是作为一个快速的数据采集工具,为桌面应用程序提供一些有用的数据。它也可以作为一个轻便的阅读器,随时查看从桌面下载的数据资料。要使它支持热同步处理,你不需要为它额外添加任何代码;
桌面应用程序:鉴于管道设计中固有的机动性,事实上任何桌面应用程序都可以和PalmOS掌上设备共享数据。桌面应用程序可以创建数据然后发送给掌上设备,处理从掌上设备得到的数据,或者和掌上设备共享数据。
同步管理器API:这组API提供桌面电脑和掌上设备使用管道通信的功能。不管掌上设备怎么和桌面电脑连接,这组API都能直接读和写掌上设备的数据;

热同步处理的步骤
当用户开始一个同步操作,不管是按下了底座的热同步按钮,还是点击了掌上设备热同步程序中的热同步按钮,同步管理器就开始工作了。下面的步骤大体上描述了整个热同步过程:
1、 用户确认和定位:每一个PalmOS掌上设备都有一个唯一的User ID与管理器相关联。如果掌上设备是第一次被用来进行同步操作,热同步管理器将提示你选择一个用户,这样当一台桌面电脑和多部掌上设备进行同步操作时,就可以保持数据的分离。在同步过程开始时,管理器要确保该UserID是合法的,然后定位到该用户在桌面电脑
[数据载入中...] [返回上一页] [打 印]